[Bug bootstrap/95934] New: bootstrap fails in compiler assert in sanitizer_platform_limits_posix.cpp:1136
andi-gcc at firstfloor dot org
gcc-bugzilla@gcc.gnu.org
Sat Jun 27 04:51:53 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95934
Bug ID: 95934
Summary: bootstrap fails in compiler assert in
sanitizer_platform_limits_posix.cpp:1136
Product: gcc
Version: 9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: bootstrap
Assignee: unassigned at gcc dot gnu.org
Reporter: andi-gcc at firstfloor dot org
Target Milestone: ---
commit e74c281bf4955eea7fdc5f21b43e29fa0235a5b0 (HEAD -> trunk, origin/trunk,
origin/master, origin/HEAD)
make bootstrap fails with
../../../../gcc/libsanitizer/sanitizer_common/sanitizer_internal_defs.h:336:30:
note: in expansion of macro 'IMPL_COMPILER_ASSERT'
336 | #define COMPILER_CHECK(pred) IMPL_COMPILER_ASSERT(pred, __LINE__)
| ^~~~~~~~~~~~~~~~~~~~
../../../../gcc/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h:1442:3:
note: in expansion of macro 'COMPILER_CHECK'
1442 | COMPILER_CHECK(sizeof(((__sanitizer_##CLASS *)NULL)->MEMBER) == \
| ^~~~~~~~~~~~~~
../../../../gcc/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:1136:1:
note: in expansion of macro 'CHECK_SIZE_AND_OFFSET'
1136 | CHECK_SIZE_AND_OFFSET(ipc_perm, mode);
| ^~~~~~~~~~~~~~~~~~~~~
Works fine when I comment out the assert. There already is a ifdef checking for
lots of cases, seems it doesn't work on mine either. This is with a recent
glibc-2.31-5.9.x86_64
(opensuse glibc)
Perhaps the assert should just be disabled like this?
(patch is likely white space damaged)
diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
index b4f8f67b664..bb6377b70cb 100644
--- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
+++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp
@@ -1133,7 +1133,7 @@ CHECK_SIZE_AND_OFFSET(ipc_perm, cgid);
/* On aarch64 glibc 2.20 and earlier provided incorrect mode field. */
/* On Arm newer glibc provide a different mode field, it's hard to detect
so just disable the check. */
-CHECK_SIZE_AND_OFFSET(ipc_perm, mode);
+//CHECK_SIZE_AND_OFFSET(ipc_perm, mode);
#endif
CHECK_TYPE_SIZE(shmid_ds);
More information about the Gcc-bugs
mailing list