[Bug middle-end/59630] New: [4.7/4.8/4.9 Regression] ICE converting the return type of a builtin function
reichelt at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Dec 30 13:54:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59630
Bug ID: 59630
Summary: [4.7/4.8/4.9 Regression] ICE converting the return
type of a builtin function
Product: gcc
Version: 4.9.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: middle-end
Assignee: unassigned at gcc dot gnu.org
Reporter: reichelt at gcc dot gnu.org
The following valid code snippet (compiled with "-std=c99 -O")
triggers an ICE since GCC 4.7.0:
==============================================================
_Bool foo()
{
_Bool (*f)(int) = __builtin_abs;
return f(0);
}
==============================================================
bug.c: In function 'foo':
bug.c:3:21: warning: initialization from incompatible pointer type [enabled by
default]
_Bool (*f)(int) = __builtin_abs;
^
bug.c:5:1: error: non-trivial conversion at assignment
}
^
_Bool
int
_4 = 0;
bug.c:5:1: internal compiler error: verify_gimple failed
0x9f1726 verify_gimple_in_cfg(function*)
../../gcc/gcc/tree-cfg.c:4854
0x9195f2 execute_function_todo
../../gcc/gcc/passes.c:1850
0x919f43 execute_todo
../../gcc/gcc/passes.c:1884
Please submit a full bug report, [etc.]
More information about the Gcc-bugs
mailing list