Mail Archives: djgpp-workers/2000/07/18/04:52:05
Eli Zaretskii wrote:
> > GCC needs to know exactly what size_t and wchar_t is
>
> This knowledge is accessible to GCC at build time, in the system
> headers.
What about build system != target system?
> > NULL is defined as __null on all platforms now
>
> Not in DJGPP. __null causes trouble in C programs.
I have trouble understanding why, if __null is a builtin. (And why
does it cause trouble on DJGPP, but not on other systems?)
> > there is no question *that* gcc must know about
> > these types even without seeing a single target header file.
>
> Why does it need to know that without seeing target header files? We
> are talking about a native build, not a cross build.
Eli, is it a big difference for us, does GCC get definition from djgpp
header, or from GCC target description one with Mark's patch?
+ #undef SIZE_TYPE
+ #define SIZE_TYPE "long unsigned int"
[and so on]
> And yes, we did read all the threads in GCC archives that appear to be
> relevant, and we did discuss them at length. But we still do not
> understand the technical considerations that caused GCC to insist on
> installing its own headers. Please help us understand this.
Uhm, how would you qualify following response:
> Wrong. GCC needs to know exactly what size_t and wchar_t is, and it
> must also provide the definition of NULL. size_t must be known so the
> builtin functions can be declared properly. wchar_t must be known so
> wide string literals can be emitted correctly. NULL is defined as
> __null on all platforms now, so that overloading works correctly in
> C++ (for C, it is something different).
Laurynas
- Raw text -