http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54404
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |4.8.0 Jack Howarth <howarth at nitro dot med.uc.edu> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |howarth at nitro dot | |med.uc.edu --- Comment #1 from Jack Howarth <howarth at nitro dot med.uc.edu> 2012-10-13 19:27:40 UTC --- Below is a trace through current gcc trunk for the failure of... FAIL: g++.dg/other/darwin-cfstring1.C -std=gnu++98 (test for errors, line 21) at -m32 with darwin.c built at -O0 for debugging purposes. # gdb /sw/src/fink.build/gcc48-4.8.0-1000/darwin_objdir/gcc/testsuite/g++/../../cc1plus ... (gdb) break darwin.c:3310 ... (gdb) r -quiet -nostdinc++ -v -I /sw/src/fink.build/gcc48-4.8.0-1000/darwin_objdir/x86_64-apple-darwin12.2.0/i386/libstdc++-v3/include/x86_64-apple-darwin12.2.0 -I /sw/src/fink.build/gcc48-4.8.0-1000/darwin_objdir/x86_64-apple-darwin12.2.0/i386/libstdc++-v3/include -I /sw/src/fink.build/gcc48-4.8.0-1000/gcc-4.8-20121011/libstdc++-v3/libsupc++ -I /sw/src/fink.build/gcc48-4.8.0-1000/gcc-4.8-20121011/libstdc++-v3/include/backward -I /sw/src/fink.build/gcc48-4.8.0-1000/gcc-4.8-20121011/libstdc++-v3/testsuite/util -imultilib i386 -iprefix /sw/src/fink.build/gcc48-4.8.0-1000/darwin_objdir/gcc/../lib/gcc/x86_64-apple-darwin12.2.0/4.8.0/ -isystem /sw/src/fink.build/gcc48-4.8.0-1000/darwin_objdir/gcc/testsuite/g++/../../include -isystem /sw/src/fink.build/gcc48-4.8.0-1000/darwin_objdir/gcc/testsuite/g++/../../include-fixed -D__DYNAMIC__ /sw/src/fink.build/gcc48-4.8.0-1000/gcc-4.8-20121011/gcc/testsuite/g++.dg/other/darwin-cfstring1.C -fPIC -quiet -dumpbase darwin-cfstring1.C -mmacosx-version-min=10.8.2 -mconstant-cfstrings -m32 -mtune=core2 -auxbase-strip darwin-cfstring1.s -std=gnu++98 -version -fno-diagnostics-show-caret -fmessage-length=0 -o darwin-cfstring1.s ... Breakpoint 1, darwin_build_constant_cfstring (str=0x10104dbc0) at ../../gcc-4.8-20121011/gcc/config/darwin.c:3316 3316 if (!str) (gdb) c Continuing. Current language: auto; currently c++ Breakpoint 1, darwin_build_constant_cfstring (str=0x10104ddc0) at ../../gcc-4.8-20121011/gcc/config/darwin.c:3316 3316 if (!str) (gdb) s 3322 STRIP_NOPS (str); (gdb) tree_strip_nop_conversions (exp=0x10104ddc0) at ../../gcc-4.8-20121011/gcc/tree.c:11254 11254 { (gdb) 11204 if (!CONVERT_EXPR_P (exp) (gdb) 4047 char const __c = TREE_CODE_CLASS (TREE_CODE (__t)); (gdb) 4048 if (!IS_EXPR_CODE_CLASS (__c)) (gdb) 4092 if (VL_EXP_CLASS_P (node)) (gdb) 4095 return TREE_CODE_LENGTH (TREE_CODE (node)); (gdb) 4127 if (__i < 0 || __i >= TREE_OPERAND_LENGTH (__u)) (gdb) 11207 if (TREE_OPERAND (exp, 0) == error_mark_node) (gdb) 3995 if (tree_contains_struct[TREE_CODE(__t)][__s] != 1) (gdb) 4092 if (VL_EXP_CLASS_P (node)) (gdb) 11210 outer_type = TREE_TYPE (exp); (gdb) 4092 if (VL_EXP_CLASS_P (node)) (gdb) 4095 return TREE_CODE_LENGTH (TREE_CODE (node)); (gdb) 4127 if (__i < 0 || __i >= TREE_OPERAND_LENGTH (__u)) (gdb) 3785 if (tree_contains_struct[TREE_CODE(__t)][__s] != 1) (gdb) 11211 inner_type = TREE_TYPE (TREE_OPERAND (exp, 0)); (gdb) 11213 if (!inner_type) (gdb) 11219 || POINTER_TYPE_P (outer_type) (gdb) 11221 && (INTEGRAL_TYPE_P (inner_type) (gdb) 11222 || POINTER_TYPE_P (inner_type) (gdb) 11221 && (INTEGRAL_TYPE_P (inner_type) (gdb) 3794 if (TREE_CODE_CLASS (TREE_CODE(__t)) != __class) (gdb) 11224 return TYPE_PRECISION (outer_type) == TYPE_PRECISION (inner_type); (gdb) 3794 if (TREE_CODE_CLASS (TREE_CODE(__t)) != __class) (gdb) 11224 return TYPE_PRECISION (outer_type) == TYPE_PRECISION (inner_type); (gdb) 11255 while (tree_nop_conversion (exp)) (gdb) 3839 char const __c = TREE_CODE_CLASS (TREE_CODE (__t)); (gdb) 3840 if (!IS_EXPR_CODE_CLASS (__c)) (gdb) 4092 if (VL_EXP_CLASS_P (node)) (gdb) 4095 return TREE_CODE_LENGTH (TREE_CODE (node)); (gdb) 4106 if (__i < 0 || __i >= TREE_OPERAND_LENGTH (__u)) (gdb) 11256 exp = TREE_OPERAND (exp, 0); (gdb) 11204 if (!CONVERT_EXPR_P (exp) (gdb) 11205 && TREE_CODE (exp) != NON_LVALUE_EXPR) (gdb) 11258 } (gdb) darwin_build_constant_cfstring (str=0x1429c1e40) at ../../gcc-4.8-20121011/gcc/config/darwin.c:3324 3324 if (TREE_CODE (str) == ADDR_EXPR) (gdb) 3327 if (TREE_CODE (str) != STRING_CST) (gdb) 3329 error ("CFString literal expression is not a string constant"); (gdb) /sw/src/fink.build/gcc48-4.8.0-1000/gcc-4.8-20121011/gcc/testsuite/g++.dg/other/darwin-cfstring1.C: In function ‘int main()’: /sw/src/fink.build/gcc48-4.8.0-1000/gcc-4.8-20121011/gcc/testsuite/g++.dg/other/darwin-cfstring1.C:13:79: error: CFString literal expression is not a string constant /sw/src/fink.build/gcc48-4.8.0-1000/gcc-4.8-20121011/gcc/testsuite/g++.dg/other/darwin-cfstring1.C:21:20: note: in expansion of macro 'CFSTR' Breakpoint 1, darwin_build_constant_cfstring (str=0x1429c1e70) at ../../gcc-4.8-20121011/gcc/config/darwin.c:3316 3316 if (!str) (gdb) 3322 STRIP_NOPS (str); (gdb) tree_strip_nop_conversions (exp=0x1429c1e70) at ../../gcc-4.8-20121011/gcc/tree.c:11254 11254 { (gdb) 11204 if (!CONVERT_EXPR_P (exp) (gdb) 11205 && TREE_CODE (exp) != NON_LVALUE_EXPR) (gdb) 11258 } (gdb) darwin_build_constant_cfstring (str=0x1429c1e70) at ../../gcc-4.8-20121011/gcc/config/darwin.c:3324 3324 if (TREE_CODE (str) == ADDR_EXPR) (gdb) 3327 if (TREE_CODE (str) != STRING_CST) (gdb) 3329 error ("CFString literal expression is not a string constant"); (gdb) /sw/src/fink.build/gcc48-4.8.0-1000/gcc-4.8-20121011/gcc/testsuite/g++.dg/other/darwin-cfstring1.C:13:79: error: CFString literal expression is not a string constant /sw/src/fink.build/gcc48-4.8.0-1000/gcc-4.8-20121011/gcc/testsuite/g++.dg/other/darwin-cfstring1.C:22:20: note: in expansion of macro 'CFSTR' Program exited with code 01.