Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
4.1.3, 4.1.4
-
None
-
Darwin machine.local 8.6.1 Darwin Kernel Version 8.6.1: Tue Mar 7 16:55:45 PST 2006; root:xnu-792.9.22.obj~1/RELEASE_I386 i386 i386
Description
That may sound weird but that's what's happening.
On Mac OS X, the HFS file system is case-insensitive. Because of this and the order of include paths defined by $(INCLUDES) in etc/config/makefile.common, one or more of the executables for the configuration checks which have the same filename as standard header files (e.g. LIMITS) are found first and included in the source files by the compiler.
Output from an example build:
machine:/Build/stdcxx user$ make BUILDDIR=/Build/stdcxx BUILDMODE=debug,shared,pthreads
GNUmakefile:283: "CONFIG not specified, using gcc.config"
creating BUILDDIR=/Users/user/Build/stdcxx
generating /Users/user/Build/stdcxx/makefile.in from /Users/user/Work/stdcxx/etc/config/gcc.config
make config
configuring for gcc-4.0.1 on darwin-8.6.1-i386
checking if the compiler is sane ok (invoked with gcc)
checking if the linker is sane ok (invoked with gcc)
...
gcc -c -I/Users/user/Work/stdcxx/include/ansi -D_RWSTDDEBUG -D_RWSTD_USE_CONFIG -I/Users/user/Build/stdcxx/include -I/Users/user/Work/stdcxx/include -pedantic -nostdinc++ -g -W -Wall -Wcast-qual -Winline -Wshadow -Wwrite-strings -Wno-long-long -Wcast-align /Users/user/Work/stdcxx/src/codecvt.cpp
gcc -c -I/Users/user/Work/stdcxx/include/ansi -D_RWSTDDEBUG -D_RWSTD_USE_CONFIG -I/Users/user/Build/stdcxx/include -I/Users/user/Work/stdcxx/include -pedantic -nostdinc++ -g -W -Wall -Wcast-qual -Winline -Wshadow -Wwrite-strings -Wno-long-long -Wcast-align /Users/user/Work/stdcxx/src/collate.cpp
In file included from /Users/user/Work/stdcxx/src/collate.cpp:38:
/Users/user/Build/stdcxx/include/limits:1: error: stray '\206' in program
/Users/user/Build/stdcxx/include/limits:1: error: stray '\250' in program
/Users/user/Build/stdcxx/include/limits:1: error: stray '\237' in program
/Users/user/Build/stdcxx/include/limits:1: error: stray '\254' in program
/Users/user/Build/stdcxx/include/limits:1: error: stray '\7' in program
...