This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: 3.0 PATCH: Fix wchar_t/wint_t definitions for bi-arch Solaris 7/8 and IRIX 6


Joseph S. Myers writes:

> Can you provide a complete list of all target triplets whose wint_t you've 
> changed?  For example, linux.h includes svr4.h, but wint_t on GNU/Linux 
> should remain as unsigned int.

No, I won't :-)  svr4.h is included in

arc/arc.h
d30v/d30v.h
fr30/fr30.h
i386/beos-elf.h
i386/sysv4.h
linux.h
m32r/m32r.h
m68k/m68kv4.h
m88k/dgux.h
m88k/sysv4.h
mcore/mcore-elf.h
mips/gnu.h
mn10200/mn10200.h
mn10300/mn10300.h
sh/elf.h
sparc/sysv4.h
v850/v850.h

directly, and many more via config.gcc.  I just don't have the time now to
check which of them gets ths svr4.h definition of WINT_TYPE and which
provides their own.  Besides, as I said, the System V ABI V4.1 explicitly
doesn't specify details of type sizes (see p. 38, 3-1), but leaves this to
the processor-specific supplements.  In fact, SCD 2.4.1 (the SPARC
Compliance Definition) defines wchar_t and wint_t as long on p. 6-83 for
32-bit SPARC, and wchar_t as int for 64-bit SPARC (p. 6P-10, Figure 6.38).
There seems to no separate 64-bit definition of wint_t, so Sun may be
violating the ABI :-)

Anyway, this clearly doesn't belong into svr4.h at all.  I'll add
appropriate comments, move my changes to sparc/sol2.h, re-bootstrap and
resubmit.

This will teach me not to change shared files without large amounts of
prior consideration :-)

	Rainer

-----------------------------------------------------------------------------
Rainer Orth, Faculty of Technology, Bielefeld University

Email: ro@TechFak.Uni-Bielefeld.DE


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]