https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85663
Bug ID: 85663 Summary: gcc-8.0.1 regression: sanitizer fails to build on mips-unknown-linux-gnu Product: gcc Version: 8.0.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: sanitizer Assignee: unassigned at gcc dot gnu.org Reporter: slyfox at inbox dot ru CC: dodji at gcc dot gnu.org, dvyukov at gcc dot gnu.org, jakub at gcc dot gnu.org, kcc at gcc dot gnu.org, marxin at gcc dot gnu.org Target Milestone: --- In file included from /tmp/portage/cross-mips-unknown-linux-gnu/gcc-8.1.0-r1/work/gcc-8.1.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_linux.cc:20: /tmp/portage/cross-mips-unknown-linux-gnu/gcc-8.1.0-r1/work/gcc-8.1.0/libsanitizer/sanitizer_common/sanitizer_internal_defs.h:317:72: error: size of array ‘assertion_failed__71’ is negative typedef char IMPL_PASTE(assertion_failed_##_, line)[2*(int)(pred)-1] ^ /tmp/portage/cross-mips-unknown-linux-gnu/gcc-8.1.0-r1/work/gcc-8.1.0/libsanitizer/sanitizer_common/sanitizer_internal_defs.h:311:30: note: in expansion of macro ‘IMPL_COMPILER_ASSERT’ #define COMPILER_CHECK(pred) IMPL_COMPILER_ASSERT(pred, __LINE__) ^~~~~~~~~~~~~~~~~~~~ /tmp/portage/cross-mips-unknown-linux-gnu/gcc-8.1.0-r1/work/gcc-8.1.0/libsanitizer/sanitizer_common/sanitizer_platform_limits_linux.cc:71:1: note: in expansion of macro ‘COMPILER_CHECK’ COMPILER_CHECK(struct_kernel_stat_sz == sizeof(struct stat)); ^~~~~~~~~~~~~~ I think it is caused by this patch: https://github.com/gcc-mirror/gcc/commit/36093749ff955d9e8cf208b04724c3a1a2ac9b04 libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h #elif defined(__mips__) const unsigned struct_kernel_stat_sz = SANITIZER_ANDROID ? FIRST_32_SECOND_64(104, 128) : - FIRST_32_SECOND_64(144, 216); + FIRST_32_SECOND_64(160, 216);