old-cross-binutils/include
Joel Brobecker 2d7bb7580a callback.h:struct host_callback_struct compilation error on Windows hosts.
On Windows, a recent gnulib update imported the lstat module, and
this caused a remote-sim.c build failure in struct host_callback_struct:

    In file included from /[...]/gdb/remote-sim.c:34:0:
    /[...]/gdb/../include/gdb/callback.h:93:9: error: duplicate member '_stati64'
       int (*lstat) (host_callback *, const char *, struct stat *);
             ^
What happens it that gnulib's stat.h makes the following defines:

     /* Large File Support on native Windows.  */
     #if 1
     # define stat _stati64
     #endif

and then:

    #if 1
    # if ! 0
    /* mingw does not support symlinks, therefore it does not have lstat.  But
       without links, stat does just fine.  */
    #  if !(defined __cplusplus && defined GNULIB_NAMESPACE)
    #   define lstat stat
    #  endif

So, the following fields in struct host_callback_struct...

      int (*stat) (host_callback *, const char *, struct stat *);
      int (*fstat) (host_callback *, int, struct stat *);
      int (*lstat) (host_callback *, const char *, struct stat *);

... get translated to...

      int (*_stati64) (host_callback *, const char *, struct _stati64 *);
      int (*_fstati64) (host_callback *, int, struct _stati64 *);
      int (*_stati64) (host_callback *, const char *, struct _stati64 *);

... which causes two fields to have the same name.

This patch fixes the issue by renaming the stat-related fields
by adding a "to_" prefix, similar to what is done in GDB's
target_ops vector.

include/gdb/ChangeLog:

	* callback.h (struct host_callback_struct) <to_stat>: Renamed
	from "stat".
	<to_fstat>: Renamed from "fstat".
	<to_lstat>: Renamed from "lstat".

sim/common/ChangeLog:

	* sim-io.c (sim_io_stat, sim_io_fstat): Adjust calls to "stat"
	and "fstat" callbacks by calls to "to_stat" and "to_fstat" (resp)
	callbacks following renaming in callback.h.
	* syscall.c (cb_syscall): Likewise.  Adjust calls to "lstat"
	callback by call to "to_lstat" callback

sim/cris/ChangeLog:

	* traps.c (cris_break_13_handler): Adjust call to "fstat" callback
	by call to "to_fstat" following renaming in callback.h.

sim/h8300/ChangeLog:

	* compile.c (sim_resume):  Adjust calls to "stat" and "fstat"
	callbacks by calls to "to_stat" and "to_fstat" (resp) callbacks
	following renaming in callback.h.
2014-12-03 13:43:08 +04:00
..
aout Update copyright years 2014-03-05 22:16:15 +10:30
cgen Update copyright years 2014-03-05 22:16:15 +10:30
coff Enabling the HIGH_ENTROPY_VA flag allows the operating system to use 2014-08-20 16:10:29 +01:00
elf Mark R_X86_64_GOTPLT64 obsolete 2014-11-13 11:26:47 -08:00
gdb callback.h:struct host_callback_struct compilation error on Windows hosts. 2014-12-03 13:43:08 +04:00
mach-o Mach-O: Add objdump -P dyld_info to dump dyld data. 2014-04-16 12:16:02 +02:00
nlm Update copyright years 2014-03-05 22:16:15 +10:30
opcode Remove broken nios2 assembler dwim support. 2014-11-28 14:41:32 -08:00
som Update copyright years 2014-03-05 22:16:15 +10:30
vms Update copyright years 2014-03-05 22:16:15 +10:30
alloca-conf.h Update copyright years 2014-03-05 22:16:15 +10:30
ansidecl.h [PATCH] include * ansidecl.h (ANSI_PROTOTYPES, PTRCONST, LONG_DOUBLE, PARAMS) (VPARAMS, VA_START, VA_OPEN, VA_CLOSE, VA_FIXEDARG, CONST) (VOLATILE, SIGNED, PROTO, EXFUN, DEFUN, DEFUN_VOID, AND, DOTS) (NOARGS): Don't define. * libiberty.h (expandargv, writeargv): Don't use PARAMS. libiberty * _doprint.c (checkit): Use stdarg, not VA_* macros. * asprintf.c (asprintf): Use stdarg, not VA_* macros. * concat.c (concat_length, concat_copy, concat_copy2, concat) (reconcat): Use stdarg, not VA_* macros. * snprintf.c (snprintf): Use stdarg, not VA_* macros. * vasprintf.c (checkit): Use stdarg, not VA_* macros. * vsnprintf.c (checkit): Use stdarg, not VA_* macros. 2014-01-21 08:52:09 -07:00
bfdlink.h Add -z bndplt to generate BND prefix in PLT entries 2014-11-18 05:40:17 -08:00
binary-io.h Update copyright years 2014-03-05 22:16:15 +10:30
bout.h Update copyright years 2014-03-05 22:16:15 +10:30
ChangeLog Recognize new DWARFv5 C11, C++11 and C++14 DW_LANG constants. 2014-11-26 12:47:29 +01:00
ChangeLog-9103 Add copyright notices 2012-12-10 12:48:03 +00:00
COPYING Update the address and phone number of the FSF organization 2005-05-10 10:21:13 +00:00
COPYING3 * COPYING3: New file. Contains version 3 of the GNU General Public License. 2007-07-17 13:50:23 +00:00
demangle.h Sync libiberty with upstream GCC. 2014-10-11 10:29:10 +01:00
dis-asm.h Remove support for the (deprecated) openrisc and or32 configurations and replace 2014-04-22 15:57:47 +01:00
dwarf2.def Merge include/* files from GCC commit 69a2f316d3. 2014-11-21 22:47:32 +00:00
dwarf2.h Recognize new DWARFv5 C11, C++11 and C++14 DW_LANG constants. 2014-11-26 12:47:29 +01:00
dyn-string.h merge from gcc 2009-06-01 19:40:44 +00:00
fibheap.h merge from gcc 2009-06-01 19:40:44 +00:00
filenames.h include/ 2012-07-13 23:39:46 +00:00
floatformat.h merge from gcc 2013-08-20 06:02:53 +00:00
fnmatch.h Update the address and phone number of the FSF organization 2005-05-10 10:21:13 +00:00
fopen-bin.h Update copyright years 2014-03-05 22:16:15 +10:30
fopen-same.h Update copyright years 2014-03-05 22:16:15 +10:30
fopen-vms.h Update copyright years 2014-03-05 22:16:15 +10:30
getopt.h Update the address and phone number of the FSF organization 2005-05-10 10:21:13 +00:00
hashtab.h merge from gcc 2010-06-10 18:30:24 +00:00
hp-symtab.h Update copyright years 2014-03-05 22:16:15 +10:30
ieee.h Update copyright years 2014-03-05 22:16:15 +10:30
leb128.h * leb128.h: #include stdint.h, inttypes.h. 2012-05-24 01:18:15 +00:00
libiberty.h Sync libiberty with upstream GCC. 2014-10-11 10:29:10 +01:00
longlong.h Sync libiberty with upstream GCC. 2014-10-11 10:29:10 +01:00
lto-symtab.h merge from gcc 2009-10-07 02:57:27 +00:00
MAINTAINERS Update copyright years 2014-03-05 22:16:15 +10:30
md5.h PR other/54620 2013-01-30 16:52:35 +00:00
oasys.h Update copyright years 2014-03-05 22:16:15 +10:30
objalloc.h merge from gcc 2012-10-10 03:11:33 +00:00
obstack.h * obstack.h [!GNUC] (obstack_free): Avoid cast to int. 2011-10-22 01:35:29 +00:00
os9k.h Update copyright years 2014-03-05 22:16:15 +10:30
partition.h Update the address and phone number of the FSF organization 2005-05-10 10:21:13 +00:00
plugin-api.h This patch assigns explicit integers to enum values corresponding 2013-02-11 19:36:56 +00:00
progress.h Update copyright years 2014-03-05 22:16:15 +10:30
safe-ctype.h * safe-ctype.h: Add #include of ctype.h before redefining 2008-07-07 17:09:31 +00:00
sha1.h PR other/54620 2013-01-30 16:52:35 +00:00
simple-object.h merge from gcc 2010-11-17 02:03:43 +00:00
sort.h Update the address and phone number of the FSF organization 2005-05-10 10:21:13 +00:00
splay-tree.h merge from gcc 2012-04-10 17:07:35 +00:00
symcat.h * symcat.h (CONCAT5, CONCAT6, XCONCAT5, XCONCAT6): Define. 2010-03-23 15:58:51 +00:00
timeval-utils.h merge from gcc 2011-09-28 20:01:45 +00:00
vtv-change-permission.h merge from gcc 2013-08-07 15:04:28 +00:00
xregex.h merge from gcc 2011-07-25 17:11:48 +00:00
xregex2.h merge from gcc 2005-07-12 10:35:00 +00:00
xtensa-config.h merge from gcc 2011-01-03 21:05:58 +00:00
xtensa-isa-internal.h Update copyright years 2014-03-05 22:16:15 +10:30
xtensa-isa.h Update copyright years 2014-03-05 22:16:15 +10:30