1C Test program for common block debugging. G. Helffrich 11 July 2004. 2C { dg-do compile } 3C { dg-skip-if "DWARF-2 only" { "*-*-*" } { "*" } { "-gdwarf-2" } } 4C { dg-skip-if "DWARF-2 only" { "*-*-*" } { "-g1" } { "" } } 5C { dg-options "-dA -gno-strict-dwarf" } 6 common i,j 7 common /label/l,m 8 i = 1 9 j = 2 10 k = 3 11 l = 4 12 m = 5 13 call sub 14 end 15 subroutine sub 16 common /label/l,m 17 logical first 18 save n 19 data first /.true./ 20 if (first) then 21 n = 0 22 first = .false. 23 endif 24 n = n + 1 25 l = l + 1 26 return 27 end 28 29C { dg-final { scan-assembler "DIE\[^\n\]*DW_TAG_common_block" } } 30C { dg-final { scan-assembler "(DW_AT_name: \"__BLNK__\"|\"__BLNK__\[^\n\]*\"\[^\n\]*DW_AT_name)" } } 31C { dg-final { scan-assembler "DIE\[^\n\]*DW_TAG_variable" } } 32C { dg-final { scan-assembler "\"i\[^\n\]*\"\[^\n\]*DW_AT_name" } } 33C { dg-final { scan-assembler "\"j\[^\n\]*\"\[^\n\]*DW_AT_name" } } 34C { dg-final { scan-assembler "DIE\[^\n\]*DW_TAG_common_block" } } 35C { dg-final { scan-assembler "(DW_AT_name: \"label\"|\"label\[^\n\]*\"\[^\n\]*DW_AT_name)" } } 36C { dg-final { scan-assembler "DIE\[^\n\]*DW_TAG_variable" } } 37C { dg-final { scan-assembler "\"l\[^\n\]*\"\[^\n\]*DW_AT_name" } } 38C { dg-final { scan-assembler "\"m\[^\n\]*\"\[^\n\]*DW_AT_name" } } 39