2010-07-15 Yao Qi Merge from Sourcery G++ 4.4: 2010-02-25 Maxim Kuvyrkov gcc/ * tree.c (initializer_zerop): Handle STRING_CST. 2010-07-15 Sandra Loosemore Backport from mainline: === modified file 'gcc/tree.c' --- old/gcc/tree.c 2010-04-01 15:18:07 +0000 +++ new/gcc/tree.c 2010-08-02 16:32:37 +0000 @@ -9335,6 +9335,19 @@ return true; } + case STRING_CST: + { + int i; + + /* We need to loop through all elements to handle cases like + "\0" and "\0foobar". */ + for (i = 0; i < TREE_STRING_LENGTH (init); ++i) + if (TREE_STRING_POINTER (init)[i] != '\0') + return false; + + return true; + } + default: return false; }