------- Comment #2 from fxcoudert at gcc dot gnu dot org 2007-06-02 21:10 ------- (In reply to comment #1) > typedef _Complex float __attribute__((mode(TC))) c128; > c128 g(void); > void foo () > { > c128 x, y; > x = g(); > }
Nope. That one doesn't ICE. The backtrace for the ICE my code in the original PR is: Program received signal SIGSEGV, Segmentation fault. build_call_expr (fndecl=0x0, n=4) at ../../trunk/gcc/builtins.c:10379 10379 tree fntype = TREE_TYPE (fndecl); (gdb) where #0 build_call_expr (fndecl=0x0, n=4) at ../../trunk/gcc/builtins.c:10379 #1 0x000000000068d0bd in expand_complex_libcall (bsi=0x7fbfffed20, ar=Variable "ar" is not available. ) at ../../trunk/gcc/tree-complex.c:903 #2 0x000000000068ff78 in tree_lower_complex_O0 () at ../../trunk/gcc/tree-complex.c:1560 #3 0x00000000005fb881 in execute_one_pass (pass=0xd3f080) at ../../trunk/gcc/passes.c:1068 #4 0x00000000005fba3c in execute_pass_list (pass=0xd3f080) at ../../trunk/gcc/passes.c:1120 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32191