[Bug sanitizer/88215] New: UBSAN: Internal compiler error with attribute(unused)
orgads at gmail dot com
gcc-bugzilla@gcc.gnu.org
Tue Nov 27 09:49:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88215
Bug ID: 88215
Summary: UBSAN: Internal compiler error with attribute(unused)
Product: gcc
Version: 8.2.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: sanitizer
Assignee: unassigned at gcc dot gnu.org
Reporter: orgads at gmail dot com
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: ---
> cat err.cpp
void foo()
{
unsigned a = 2, __attribute__ ((unused)) b = 1;
unsigned f = a/b;
}
> g++ -fsanitize=undefined -w -O0 -c err.cpp
err.cpp: In function 'void foo()':
err.cpp:4:20: internal compiler error: in ubsan_instrument_division, at
c-family/c-ubsan.c:48
unsigned f = a/b;
It doesn't happen if the variable is declared separately:
unsigned __attribute__ ((unused)) b = 1;
or
__attribute__ ((unused)) unsigned b = 1;
Looks similar to bug 80348.
More information about the Gcc-bugs
mailing list