On 3/24/07, Brian Dessent <[EMAIL PROTECTED]> wrote:
Dave Korn wrote:

> # 405 "/usr/include/stdio.h" 3 4

[ Which is from newlib (libc/include/stdio.h) if anyone reading this
doesn't have a Cygwin system handy. ]

> static __inline__ int __sgetc_r(struct _reent *__ptr, FILE *__p)
>   {
> [...]
>
>   The critical difference is the presence or absence of
> -fkeep-inline-functions.  I think I remember there being some change between
> gcc-3.x and gcc-4.x in inline handling and I think that's what's biting us
> now; I think this may only arise in stage1 where we're trying to use 3.x to
> compile 4.x.

I too thought that this was related to the c99 inline changes, but I
think those only apply to "extern inline" which is not the case here.

The real cause seems to be that -fkeep-inline-functions was a no-op up
until: <http://gcc.gnu.org/ml/gcc-patches/2007-02/msg01396.html>, which
seems to roughly correspond to when bootstrap stopped working on Cygwin.


Actually it was not a no-op in 3.4, just 4.2 (or was it also broken in
4.1) broke -fkeep-inline-functions and nobody noticed until later.
Cygwin's headers are broken with respect of -fkeep-inline-functions
and need to be fixed.

-- Pinski

Reply via email to