--- /dev/null
+/* { dg-do compile } */
+/* { dg-options "-O0 -fdump-tree-optimized" } */
+
+int main()
+{
+ char string_0[] = "\x0";
+ char string_1[] = "\x1";
+ char string_2[] = "\x2";
+ char string_3[] = "\x3";
+ char string_4[] = "\x4";
+ char string_5[] = "\x5";
+ char string_6[] = "\x6";
+ char string_7[] = "\x7";
+ char string_8[] = "\x8";
+ char string_9[] = "\x9";
+ char string_10[] = "\xa";
+ char string_11[] = "\xb";
+ char string_12[] = "\xc";
+ char string_13[] = "\xd";
+ char string_14[] = "\xe";
+ char string_15[] = "\xf";
+ char string_16[] = "\x10";
+ char string_17[] = "\x11";
+ char string_18[] = "\x12";
+ char string_19[] = "\x13";
+ char string_20[] = "\x14";
+ char string_21[] = "\x15";
+ char string_22[] = "\x16";
+ char string_23[] = "\x17";
+ char string_24[] = "\x18";
+ char string_25[] = "\x19";
+ char string_26[] = "\x1a";
+ char string_27[] = "\x1b";
+ char string_28[] = "\x1c";
+ char string_29[] = "\x1d";
+ char string_30[] = "\x1e";
+ char string_31[] = "\x1f";
+ char string_32[] = "\x20";
+ char string_33[] = "\x21";
+ char string_34[] = "\x22";
+ char string_35[] = "\x23";
+ char string_36[] = "\x24";
+ char string_37[] = "\x25";
+ char string_38[] = "\x26";
+ char string_39[] = "\x27";
+ char string_40[] = "\x28";
+ char string_41[] = "\x29";
+ char string_42[] = "\x2a";
+ char string_43[] = "\x2b";
+ char string_44[] = "\x2c";
+ char string_45[] = "\x2d";
+ char string_46[] = "\x2e";
+ char string_47[] = "\x2f";
+ char string_48[] = "\x30";
+ char string_49[] = "\x31";
+ char string_50[] = "\x32";
+ char string_51[] = "\x33";
+ char string_52[] = "\x34";
+ char string_53[] = "\x35";
+ char string_54[] = "\x36";
+ char string_55[] = "\x37";
+ char string_56[] = "\x38";
+ char string_57[] = "\x39";
+ char string_58[] = "\x3a";
+ char string_59[] = "\x3b";
+ char string_60[] = "\x3c";
+ char string_61[] = "\x3d";
+ char string_62[] = "\x3e";
+ char string_63[] = "\x3f";
+ char string_64[] = "\x40";
+ char string_65[] = "\x41";
+ char string_66[] = "\x42";
+ char string_67[] = "\x43";
+ char string_68[] = "\x44";
+ char string_69[] = "\x45";
+ char string_70[] = "\x46";
+ char string_71[] = "\x47";
+ char string_72[] = "\x48";
+ char string_73[] = "\x49";
+ char string_74[] = "\x4a";
+ char string_75[] = "\x4b";
+ char string_76[] = "\x4c";
+ char string_77[] = "\x4d";
+ char string_78[] = "\x4e";
+ char string_79[] = "\x4f";
+ char string_80[] = "\x50";
+ char string_81[] = "\x51";
+ char string_82[] = "\x52";
+ char string_83[] = "\x53";
+ char string_84[] = "\x54";
+ char string_85[] = "\x55";
+ char string_86[] = "\x56";
+ char string_87[] = "\x57";
+ char string_88[] = "\x58";
+ char string_89[] = "\x59";
+ char string_90[] = "\x5a";
+ char string_91[] = "\x5b";
+ char string_92[] = "\x5c";
+ char string_93[] = "\x5d";
+ char string_94[] = "\x5e";
+ char string_95[] = "\x5f";
+ char string_96[] = "\x60";
+ char string_97[] = "\x61";
+ char string_98[] = "\x62";
+ char string_99[] = "\x63";
+ char string_100[] = "\x64";
+ char string_101[] = "\x65";
+ char string_102[] = "\x66";
+ char string_103[] = "\x67";
+ char string_104[] = "\x68";
+ char string_105[] = "\x69";
+ char string_106[] = "\x6a";
+ char string_107[] = "\x6b";
+ char string_108[] = "\x6c";
+ char string_109[] = "\x6d";
+ char string_110[] = "\x6e";
+ char string_111[] = "\x6f";
+ char string_112[] = "\x70";
+ char string_113[] = "\x71";
+ char string_114[] = "\x72";
+ char string_115[] = "\x73";
+ char string_116[] = "\x74";
+ char string_117[] = "\x75";
+ char string_118[] = "\x76";
+ char string_119[] = "\x77";
+ char string_120[] = "\x78";
+ char string_121[] = "\x79";
+ char string_122[] = "\x7a";
+ char string_123[] = "\x7b";
+ char string_124[] = "\x7c";
+ char string_125[] = "\x7d";
+ char string_126[] = "\x7e";
+ char string_127[] = "\x7f";
+ char string_128[] = "\x80";
+ char string_129[] = "\x81";
+ char string_130[] = "\x82";
+ char string_131[] = "\x83";
+ char string_132[] = "\x84";
+ char string_133[] = "\x85";
+ char string_134[] = "\x86";
+ char string_135[] = "\x87";
+ char string_136[] = "\x88";
+ char string_137[] = "\x89";
+ char string_138[] = "\x8a";
+ char string_139[] = "\x8b";
+ char string_140[] = "\x8c";
+ char string_141[] = "\x8d";
+ char string_142[] = "\x8e";
+ char string_143[] = "\x8f";
+ char string_144[] = "\x90";
+ char string_145[] = "\x91";
+ char string_146[] = "\x92";
+ char string_147[] = "\x93";
+ char string_148[] = "\x94";
+ char string_149[] = "\x95";
+ char string_150[] = "\x96";
+ char string_151[] = "\x97";
+ char string_152[] = "\x98";
+ char string_153[] = "\x99";
+ char string_154[] = "\x9a";
+ char string_155[] = "\x9b";
+ char string_156[] = "\x9c";
+ char string_157[] = "\x9d";
+ char string_158[] = "\x9e";
+ char string_159[] = "\x9f";
+ char string_160[] = "\xa0";
+ char string_161[] = "\xa1";
+ char string_162[] = "\xa2";
+ char string_163[] = "\xa3";
+ char string_164[] = "\xa4";
+ char string_165[] = "\xa5";
+ char string_166[] = "\xa6";
+ char string_167[] = "\xa7";
+ char string_168[] = "\xa8";
+ char string_169[] = "\xa9";
+ char string_170[] = "\xaa";
+ char string_171[] = "\xab";
+ char string_172[] = "\xac";
+ char string_173[] = "\xad";
+ char string_174[] = "\xae";
+ char string_175[] = "\xaf";
+ char string_176[] = "\xb0";
+ char string_177[] = "\xb1";
+ char string_178[] = "\xb2";
+ char string_179[] = "\xb3";
+ char string_180[] = "\xb4";
+ char string_181[] = "\xb5";
+ char string_182[] = "\xb6";
+ char string_183[] = "\xb7";
+ char string_184[] = "\xb8";
+ char string_185[] = "\xb9";
+ char string_186[] = "\xba";
+ char string_187[] = "\xbb";
+ char string_188[] = "\xbc";
+ char string_189[] = "\xbd";
+ char string_190[] = "\xbe";
+ char string_191[] = "\xbf";
+ char string_192[] = "\xc0";
+ char string_193[] = "\xc1";
+ char string_194[] = "\xc2";
+ char string_195[] = "\xc3";
+ char string_196[] = "\xc4";
+ char string_197[] = "\xc5";
+ char string_198[] = "\xc6";
+ char string_199[] = "\xc7";
+ char string_200[] = "\xc8";
+ char string_201[] = "\xc9";
+ char string_202[] = "\xca";
+ char string_203[] = "\xcb";
+ char string_204[] = "\xcc";
+ char string_205[] = "\xcd";
+ char string_206[] = "\xce";
+ char string_207[] = "\xcf";
+ char string_208[] = "\xd0";
+ char string_209[] = "\xd1";
+ char string_210[] = "\xd2";
+ char string_211[] = "\xd3";
+ char string_212[] = "\xd4";
+ char string_213[] = "\xd5";
+ char string_214[] = "\xd6";
+ char string_215[] = "\xd7";
+ char string_216[] = "\xd8";
+ char string_217[] = "\xd9";
+ char string_218[] = "\xda";
+ char string_219[] = "\xdb";
+ char string_220[] = "\xdc";
+ char string_221[] = "\xdd";
+ char string_222[] = "\xde";
+ char string_223[] = "\xdf";
+ char string_224[] = "\xe0";
+ char string_225[] = "\xe1";
+ char string_226[] = "\xe2";
+ char string_227[] = "\xe3";
+ char string_228[] = "\xe4";
+ char string_229[] = "\xe5";
+ char string_230[] = "\xe6";
+ char string_231[] = "\xe7";
+ char string_232[] = "\xe8";
+ char string_233[] = "\xe9";
+ char string_234[] = "\xea";
+ char string_235[] = "\xeb";
+ char string_236[] = "\xec";
+ char string_237[] = "\xed";
+ char string_238[] = "\xee";
+ char string_239[] = "\xef";
+ char string_240[] = "\xf0";
+ char string_241[] = "\xf1";
+ char string_242[] = "\xf2";
+ char string_243[] = "\xf3";
+ char string_244[] = "\xf4";
+ char string_245[] = "\xf5";
+ char string_246[] = "\xf6";
+ char string_247[] = "\xf7";
+ char string_248[] = "\xf8";
+ char string_249[] = "\xf9";
+ char string_250[] = "\xfa";
+ char string_251[] = "\xfb";
+ char string_252[] = "\xfc";
+ char string_253[] = "\xfd";
+ char string_254[] = "\xfe";
+ char string_255[] = "\xff";
+
+ return 0;
+}
+
+/* { dg-final { scan-tree-dump "string_0 = \"\";" "optimized" } } */
+/* { dg-final { scan-tree-dump "string_4 = \"\\\\4\";" "optimized" } } */
+/* { dg-final { scan-tree-dump "string_28 = \"\\\\x1c\";" "optimized" } } */
+/* { dg-final { scan-tree-dump "string_51 = \"3\";" "optimized" } } */
+/* { dg-final { scan-tree-dump "string_255 = \"\\\\xff\";" "optimized" } } */
+