1 // { dg-do compile } 2 // { dg-options "-gdwarf-2 -dA -femit-struct-debug-detailed=any" } 3 // { dg-final { scan-assembler "timespec.*DW_AT_name" } } 4 // { dg-final { scan-assembler "tv_sec.*DW_AT_name" } } 5 // { dg-final { scan-assembler "tv_nsec.*DW_AT_name" } } 6 // { dg-final { scan-assembler "itimerspec.*DW_AT_name" } } 7 // { dg-final { scan-assembler "it_interval.*DW_AT_name" } } 8 // { dg-final { scan-assembler "it_value.*DW_AT_name" } } 9 // { dg-final { scan-assembler "gstruct_head_ordy_defn_ref_head.*DW_AT_name" } } 10 // { dg-final { scan-assembler "field_head_ordy_defn_ref_head.*DW_AT_name" } } 11 // { dg-final { scan-assembler "gstruct_head_ordy_defn_ptr_head.*DW_AT_name" } } 12 // { dg-final { scan-assembler "field_head_ordy_defn_ptr_head.*DW_AT_name" } } 13 // { dg-final { scan-assembler "gstruct_head_ordy_defn_fld_head.*DW_AT_name" } } 14 // { dg-final { scan-assembler "field_head_ordy_defn_fld_head.*DW_AT_name" } } 15 // { dg-final { scan-assembler "gstruct_head_ordy_defn_var_head.*DW_AT_name" } } 16 // { dg-final { scan-assembler "field_head_ordy_defn_var_head_inc.*DW_AT_name" } } 17 // { dg-final { scan-assembler "field_head_ordy_defn_var_head_ref.*DW_AT_name" } } 18 // { dg-final { scan-assembler "field_head_ordy_defn_var_head_ptr.*DW_AT_name" } } 19 // { dg-final { scan-assembler "field_head_ordy_defn_var_head_fld.*DW_AT_name" } } 20 // { dg-final { scan-assembler "gstruct_head_ordy_decl_ref_head.*DW_AT_name" } } 21 // { dg-final { scan-assembler "gstruct_head_ordy_defn_ref_base.*DW_AT_name" } } 22 // { dg-final { scan-assembler "field_head_ordy_defn_ref_base.*DW_AT_name" } } 23 // { dg-final { scan-assembler "gstruct_head_ordy_defn_ptr_base.*DW_AT_name" } } 24 // { dg-final { scan-assembler "field_head_ordy_defn_ptr_base.*DW_AT_name" } } 25 // { dg-final { scan-assembler "gstruct_head_ordy_defn_fld_base.*DW_AT_name" } } 26 // { dg-final { scan-assembler "field_head_ordy_defn_fld_base.*DW_AT_name" } } 27 // { dg-final { scan-assembler "gstruct_head_ordy_defn_var_base.*DW_AT_name" } } 28 // { dg-final { scan-assembler "field_head_ordy_defn_var_base.*DW_AT_name" } } 29 // { dg-final { scan-assembler "gstruct_head_tmpl_defn_fld_head<int>.*DW_AT_name" } } 30 // { dg-final { scan-assembler "field_head_tmpl_defn_fld_head.*DW_AT_name" } } 31 // { dg-final { scan-assembler "gstruct_head_tmpl_defn_var_head<int>.*DW_AT_name" } } 32 // { dg-final { scan-assembler "field_head_tmpl_defn_var_head_inc.*DW_AT_name" } } 33 // { dg-final { scan-assembler "field_head_tmpl_defn_var_head_ref.*DW_AT_name" } } 34 // { dg-final { scan-assembler "field_head_tmpl_defn_var_head_ptr.*DW_AT_name" } } 35 // { dg-final { scan-assembler "field_head_tmpl_defn_var_head_fld.*DW_AT_name" } } 36 // { dg-final { scan-assembler "gstruct_head_tmpl_decl_ref_head<int>.*DW_AT_name" } } 37 // { dg-final { scan-assembler "gstruct_head_tmpl_defn_ref_head<int>.*DW_AT_name" } } 38 // { dg-final { scan-assembler "gstruct_head_tmpl_defn_ptr_head<int>.*DW_AT_name" } } 39 // { dg-final { scan-assembler "field_head_tmpl_defn_ptr_head.*DW_AT_name" } } 40 // { dg-final { scan-assembler "gstruct_base_ordy_defn_ref_base.*DW_AT_name" } } 41 // { dg-final { scan-assembler "field_base_ordy_defn_ref_base.*DW_AT_name" } } 42 // { dg-final { scan-assembler "gstruct_base_ordy_defn_ptr_base.*DW_AT_name" } } 43 // { dg-final { scan-assembler "field_base_ordy_defn_ptr_base.*DW_AT_name" } } 44 // { dg-final { scan-assembler "gstruct_base_ordy_defn_fld_base.*DW_AT_name" } } 45 // { dg-final { scan-assembler "field_base_ordy_defn_fld_base.*DW_AT_name" } } 46 // { dg-final { scan-assembler "gstruct_base_ordy_defn_var_base.*DW_AT_name" } } 47 // { dg-final { scan-assembler "field1_base_ordy_defn_var_base_inc.*DW_AT_name" } } 48 // { dg-final { scan-assembler "field1_base_ordy_defn_var_base_ref.*DW_AT_name" } } 49 // { dg-final { scan-assembler "field1_base_ordy_defn_var_base_ptr.*DW_AT_name" } } 50 // { dg-final { scan-assembler "field1_base_ordy_defn_var_base_fld.*DW_AT_name" } } 51 // { dg-final { scan-assembler "field2_base_ordy_defn_var_base_inc.*DW_AT_name" } } 52 // { dg-final { scan-assembler "field2_base_ordy_defn_var_base_ref.*DW_AT_name" } } 53 // { dg-final { scan-assembler "field2_base_ordy_defn_var_base_ptr.*DW_AT_name" } } 54 // { dg-final { scan-assembler "field2_base_ordy_defn_var_base_fld.*DW_AT_name" } } 55 // { dg-final { scan-assembler "gstruct_head_ordy_decl_ref_base.*DW_AT_name" } } 56 // { dg-final { scan-assembler "gstruct_base_ordy_decl_ref_base.*DW_AT_name" } } 57 // { dg-final { scan-assembler "gstruct_head_tmpl_defn_var_base<int>.*DW_AT_name" } } 58 // { dg-final { scan-assembler "field_head_tmpl_defn_var_base.*DW_AT_name" } } 59 // { dg-final { scan-assembler "gstruct_head_tmpl_defn_fld_base<int>.*DW_AT_name" } } 60 // { dg-final { scan-assembler "field_head_tmpl_defn_fld_base.*DW_AT_name" } } 61 // { dg-final { scan-assembler "gstruct_base_tmpl_defn_fld_base<int>.*DW_AT_name" } } 62 // { dg-final { scan-assembler "field_base_tmpl_defn_fld_base.*DW_AT_name" } } 63 // { dg-final { scan-assembler "gstruct_base_tmpl_defn_var_base<int>.*DW_AT_name" } } 64 // { dg-final { scan-assembler "field1_base_tmpl_defn_var_base_inc.*DW_AT_name" } } 65 // { dg-final { scan-assembler "field1_base_tmpl_defn_var_base_ref.*DW_AT_name" } } 66 // { dg-final { scan-assembler "field1_base_tmpl_defn_var_base_ptr.*DW_AT_name" } } 67 // { dg-final { scan-assembler "field1_base_tmpl_defn_var_base_fld.*DW_AT_name" } } 68 // { dg-final { scan-assembler "field2_base_tmpl_defn_var_base_inc.*DW_AT_name" } } 69 // { dg-final { scan-assembler "field2_base_tmpl_defn_var_base_ref.*DW_AT_name" } } 70 // { dg-final { scan-assembler "field2_base_tmpl_defn_var_base_ptr.*DW_AT_name" } } 71 // { dg-final { scan-assembler "field2_base_tmpl_defn_var_base_fld.*DW_AT_name" } } 72 // { dg-final { scan-assembler "gstruct_head_tmpl_decl_ref_base<int>.*DW_AT_name" } } 73 // { dg-final { scan-assembler "gstruct_head_tmpl_defn_ref_base<int>.*DW_AT_name" } } 74 // { dg-final { scan-assembler "gstruct_head_tmpl_defn_ptr_base<int>.*DW_AT_name" } } 75 // { dg-final { scan-assembler "field_head_tmpl_defn_ptr_base.*DW_AT_name" } } 76 // { dg-final { scan-assembler "gstruct_base_tmpl_decl_ref_base<int>.*DW_AT_name" } } 77 // { dg-final { scan-assembler "gstruct_base_tmpl_defn_ref_base<int>.*DW_AT_name" } } 78 // { dg-final { scan-assembler "gstruct_base_tmpl_defn_ptr_base<int>.*DW_AT_name" } } 79 // { dg-final { scan-assembler "field_base_tmpl_defn_ptr_base.*DW_AT_name" } } 80 # 1 "fesd-any.C" 81 # 1 "<built-in>" 82 # 1 "<command-line>" 83 # 1 "fesd-any.C" 84 85 //#include "time.h" 86 # 1 "time.h" 1 3 4 87 struct timespec 88 { 89 long int tv_sec; 90 long int tv_nsec; 91 }; 92 93 struct itimerspec 94 { 95 struct timespec it_interval; 96 struct timespec it_value; 97 }; 98 99 # 6 "fesd-any.C" 2 100 101 struct timespec base_var8; 102 struct itimerspec *base_var9; 103 104 #include "fesd-any.h" 105 106 struct gstruct_head_ordy_defn_var_base base_var1; 107 struct gstruct_base_ordy_defn_var_base base_var2; 108 109 struct gstruct_head_tmpl_defn_var_base< int > base_var5; 110 struct gstruct_base_tmpl_defn_var_base< int > base_var6; 111 112 int base_function() { 113 return 0 114 + base_var1.field_head_ordy_defn_var_base 115 + base_var2.field1_base_ordy_defn_var_base_ptr->field_head_ordy_defn_ptr_base 116 + base_var2.field1_base_ordy_defn_var_base_fld.field_head_ordy_defn_fld_base 117 + base_var2.field2_base_ordy_defn_var_base_ptr->field_base_ordy_defn_ptr_base 118 + base_var2.field2_base_ordy_defn_var_base_fld.field_base_ordy_defn_fld_base 119 + base_var5.field_head_tmpl_defn_var_base 120 + base_var6.field1_base_tmpl_defn_var_base_ptr->field_head_tmpl_defn_ptr_base 121 + base_var6.field1_base_tmpl_defn_var_base_fld.field_head_tmpl_defn_fld_base 122 + base_var6.field2_base_tmpl_defn_var_base_ptr->field_base_tmpl_defn_ptr_base 123 + base_var6.field2_base_tmpl_defn_var_base_fld.field_base_tmpl_defn_fld_base 124 ; 125 } 126 127