http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56327
Bug #: 56327 Summary: [4.8 Regression] Revision 196009 breaks bootstrap on x32 Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassig...@gcc.gnu.org ReportedBy: hjl.to...@gmail.com On x32, revision 196009 gave In file included from /export/gnu/import/git/gcc/libsanitizer/interception/interception.h:20:0, from /export/gnu/import/git/gcc/libsanitizer/interception/interception_type_test.cc:15: /export/gnu/import/git/gcc/libsanitizer/sanitizer_common/sanitizer_internal_defs.h:221:72: error: size of array ‘assertion_failed__34’ is negative typedef char IMPL_PASTE(assertion_failed_##_, line)[2*(int)(pred)-1] ^ /export/gnu/import/git/gcc/libsanitizer/sanitizer_common/sanitizer_internal_defs.h:215:30: note: in expansion of macro ‘IMPL_COMPILER_ASSERT’ #define COMPILER_CHECK(pred) IMPL_COMPILER_ASSERT(pred, __LINE__) ^ /export/gnu/import/git/gcc/libsanitizer/interception/interception_type_test.cc:34:1: note: in expansion of macro ‘COMPILER_CHECK’ COMPILER_CHECK(sizeof(OFF_T) == sizeof(off_t)); ^ make[7]: *** [interception_type_test.lo] Error 1 make[7]: *** Waiting for unfinished jobs.... The problem is in libsanitizer/interception/interception.h: #ifdef __APPLE__ typedef __sanitizer::u64 OFF_T; #else typedef __sanitizer::uptr OFF_T; #endif On x32, off_t is 64 bit and uptr is 32 bit.