foreach {name} {struct_01_01 struct_01_02 struct_01_03 struct_01_04
struct_02_01 struct_02_02 struct_02_03 struct_02_04
struct_04_01 struct_04_02 struct_04_03 struct_04_04
- struct_05_01 struct_05_02 struct_05_03 struct_05_04} {
+ struct_05_01 struct_05_02 struct_05_03 struct_05_04
+ struct_static_02_01 struct_static_02_02 struct_static_02_03 struct_static_02_04
+ struct_static_04_01 struct_static_04_02 struct_static_04_03 struct_static_04_04
+ struct_static_06_01 struct_static_06_02 struct_static_06_03 struct_static_06_04} {
+
+ # Only run static member tests on C++
+ if { $lang == "c" && [regexp "static" $name match] } {
+ continue
+ }
- if { ( $lang == "c++"
- && ( ( [regexp "struct_01_0(1|2|3)" $name match] && [regexp "^types-(td($|-)|tl(|l)(|-tf|-td|-tld)$)" $types match] )
- || ( $name == "struct_01_02" && $types == "types-tfc" )
- || ( $name == "struct_01_04" && [regexp "^types-(tf($|-)|ti(|-tf|-td|-tld)$)" $types match] )
- || ( $name == "struct_02_01" && [regexp "^types-tf-t(c|s|i)" $types match] ) ) ) } {
+ if { $lang == "c++"
+ && ( ( [regexp "struct_01_0(1|2|3)" $name match] && [regexp "^types-(td($|-)|tl(|l)(|-tf|-td|-tld)$)" $types match] )
+ || ( $name == "struct_01_02" && $types == "types-tfc" )
+ || ( $name == "struct_01_04" && [regexp "^types-(tf($|-)|ti(|-tf|-td|-tld)$)" $types match] )
+ || ( $name == "struct_02_01" && [regexp "^types-tf-t(c|s|i)" $types match] )
+ || ( $name == "struct_static_02_02" && [regexp "^types-(t(f|d|ld)-t(d|l|ll)$|t(d|l|ll)$|t(c|s|i|l|ll)-td)" $types match] )
+ || ( $name == "struct_static_02_03" && [regexp "^types-(ti-t(f|l|d|)|tf(-|$)|ti$)" $types match] )
+ || ( $name == "struct_static_04_02" && [regexp "^types-(t(c|s)-tf|tf-ts)" $types match] )
+ || ( $name == "struct_static_06_04" && ![regexp "^types-(t(c|dc|ldc|ld)$|t.-tld|tl(l|d)-tld|t(f|d|ld)-tc)" $types match] ) ) } {
setup_xfail gdb/24104 "x86_64-*-linux*"
}
gdb_test "p/d check_arg_${name} (ref_val_${name})" "= 1"