build breakage in libsanitizer

Oleg Smolsky oleg.smolsky@riverbed.com
Mon Feb 24 21:28:00 GMT 2014


Hey all, I've just tried building Trunk from branches/google/main/ and 
got the following failure in libsanitizer:

In file included from 
/mnt/test/rvbd-root-gcc49/usr/include/features.h:356:0,
                  from /mnt/test/rvbd-root-gcc49/usr/include/arpa/inet.h:22,
                  from 
../../../../gcc49-google-main/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cc:20:
/mnt/test/rvbd-root-gcc49/usr/include/sys/timex.h:145:31: error: 
expected initializer before 'throw'
       __asm__ ("ntp_gettimex") __THROW;
                                ^

This is an intel-to-intel cross-compiler that is being built against 
linux-2.6.32.27 headers and glibc-2.12 (with a few redhat patches). The 
system header in question contains the following:

#if defined __GNUC__ && __GNUC__ >= 2
extern int ntp_gettime (struct ntptimeval *__ntv)
      __asm__ ("ntp_gettimex") __THROW;
#else
extern int ntp_gettimex (struct ntptimeval *__ntv) __THROW;
# define ntp_gettime ntp_gettimex
#endif

This same header works against gcc4.8 (or is not used). Could someone 
clarify what libsanitizer needs here and what gcc dislikes please? Which 
should I patch?

Thanks in advance!
Oleg.



More information about the Gcc mailing list