This is the mail archive of the gcc-bugs@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]
Other format: [Raw text]

[Bug target/61407] Build errors on latest OS X 10.10 Yosemite with Xcode 6 on GCC 4.8.3


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61407

--- Comment #33 from James Clarke <jrtc27 at jrtc27 dot com> ---
(In reply to Jack Howarth from comment #30)
> The proposed changes in v4 of the patch aren't building here on 10.9. I
> don't see how
> 
> # if defined(_DARWIN_FEATURE_64_BIT_INODE)
> 
> can completely substitute forâ
> 
> # if ! defined(__DARWIN_64_BIT_INO_T) || __DARWIN_64_BIT_INO_T 
> 
> as sys/cdefs.h showsâ
> 
> /*
>  * _DARWIN_FEATURE_64_BIT_INODE indicates that the ino_t type is 64-bit, and
>  * structures modified for 64-bit inodes (like struct stat) will be used.
>  */
> #if __DARWIN_64_BIT_INO_T
> #define _DARWIN_FEATURE_64_BIT_INODE            1
> #endif
> 
> which means thatâ
> 
> # if defined(_DARWIN_FEATURE_64_BIT_INODE)
> 
> is effectively only
> 
> # if __DARWIN_64_BIT_INO_T 
> 
> as the definition of _DARWIN_FEATURE_64_BIT_INODE only checks if
> __DARWIN_64_BIT_INO_T is set and not if it is undefined as well.

I was able to perform a complete clean bootstrap on my system, so I'm curious
as to what error(s) you got?

I agree, the two are not equivalent, but the first one (!defined(X) || X) is
wrong in my opinion, as if the macro is not defined, the documentation for
dir(5) states that the 32-bit versions are used.

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