http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48238
--- Comment #3 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2011-03-22 15:11:16 UTC --- > Better regexps appreciated. /* { dg-final { scan-assembler "DW_TAG_typedef\[^\\r\\n\]*\[\\r\\n\]+\[^\\r\\n\]*(DW_AT_name: \"Harry_t\"|\"Harry_t..\".*DW_AT_name)" } } */ works for me, hence --- ../_clean/gcc/testsuite/gcc.dg/debug/dwarf2/pr47939-1.c 2011-03-21 19:22:34.000000000 +0100 +++ gcc/testsuite/gcc.dg/debug/dwarf2/pr47939-1.c 2011-03-22 16:00:14.000000000 +0100 @@ -4,5 +4,5 @@ typedef struct _Harry { int dummy; } Harry_t; Harry_t harry; -/* { dg-final { scan-assembler "DW_TAG_typedef\[^\\r\\n\]*\[\\r\\n\]+\[^\\r\\n\]*DW_AT_name: \"Harry_t\"" } } */ +/* { dg-final { scan-assembler "DW_TAG_typedef\[^\\r\\n\]*\[\\r\\n\]+\[^\\r\\n\]*(DW_AT_name: \"Harry_t\"|\"Harry_t..\".*DW_AT_name)" } } */ /* { dg-final { cleanup-saved-temps } } */ --- ../_clean/gcc/testsuite/gcc.dg/debug/dwarf2/pr47939-2.c 2011-03-21 19:22:34.000000000 +0100 +++ gcc/testsuite/gcc.dg/debug/dwarf2/pr47939-2.c 2011-03-22 16:04:14.000000000 +0100 @@ -4,5 +4,5 @@ typedef const struct _Harry { int dummy; } Harry_t; Harry_t harry; -/* { dg-final { scan-assembler "DW_TAG_typedef\[^\\r\\n\]*\[\\r\\n\]+\[^\\r\\n\]*DW_AT_name: \"Harry_t\"" } } */ +/* { dg-final { scan-assembler "DW_TAG_typedef\[^\\r\\n\]*\[\\r\\n\]+\[^\\r\\n\]*(DW_AT_name: \"Harry_t\"|\"Harry_t..\".*DW_AT_name)" } } */ /* { dg-final { cleanup-saved-temps } } */ --- ../_clean/gcc/testsuite/gcc.dg/debug/dwarf2/pr47939-3.c 2011-03-21 19:22:34.000000000 +0100 +++ gcc/testsuite/gcc.dg/debug/dwarf2/pr47939-3.c 2011-03-22 16:04:40.000000000 +0100 @@ -4,5 +4,5 @@ typedef struct _Harry { int dummy; } Harry_t; const Harry_t harry[5]; -/* { dg-final { scan-assembler "DW_TAG_typedef\[^\\r\\n\]*\[\\r\\n\]+\[^\\r\\n\]*DW_AT_name: \"Harry_t\"" } } */ +/* { dg-final { scan-assembler "DW_TAG_typedef\[^\\r\\n\]*\[\\r\\n\]+\[^\\r\\n\]*(DW_AT_name: \"Harry_t\"|\"Harry_t..\".*DW_AT_name)" } } */ /* { dg-final { cleanup-saved-temps } } */ --- ../_clean/gcc/testsuite/gcc.dg/debug/dwarf2/pr47939-4.c 2011-03-21 19:22:34.000000000 +0100 +++ gcc/testsuite/gcc.dg/debug/dwarf2/pr47939-4.c 2011-03-22 16:05:13.000000000 +0100 @@ -4,5 +4,5 @@ typedef const struct _Harry { int dummy; } Harry_t; Harry_t harry[10]; -/* { dg-final { scan-assembler "DW_TAG_typedef\[^\\r\\n\]*\[\\r\\n\]+\[^\\r\\n\]*DW_AT_name: \"Harry_t\"" } } */ +/* { dg-final { scan-assembler "DW_TAG_typedef\[^\\r\\n\]*\[\\r\\n\]+\[^\\r\\n\]*(DW_AT_name: \"Harry_t\"|\"Harry_t..\".*DW_AT_name)" } } */ /* { dg-final { cleanup-saved-temps } } */ leads to ... Running /opt/gcc/work/gcc/testsuite/gcc.dg/debug/dwarf2/dwarf2.exp ... === gcc Summary for unix/-m64 === # of expected passes 369 # of unsupported tests 5 === gcc Summary === # of expected passes 738 # of unsupported tests 10