From 865e2df5ecceb9f3cde0a64b719375d783e16dc9 Mon Sep 17 00:00:00 2001 From: Sergio Durigan Junior Date: May 03 2019 00:08:19 +0000 Subject: Unbreak previous commit. Rebase to FSF GDB 8.3.50.20190501 (8.4pre). Adjust VLA testcases. Fix "gcore does not support COREFILTER_ELF_HEADERS" (RH BZ 1371380, Sergio Durigan Junior). --- diff --git a/gdb-6.6-buildid-locate-core-as-arg.patch b/gdb-6.6-buildid-locate-core-as-arg.patch index 8b49cfd..70661f5 100644 --- a/gdb-6.6-buildid-locate-core-as-arg.patch +++ b/gdb-6.6-buildid-locate-core-as-arg.patch @@ -137,7 +137,7 @@ diff --git a/gdb/main.c b/gdb/main.c + { + exec_file_attach (filename, from_tty); + } -+ catch (const gdb_exception_error &e) ++ catch (gdb_exception_error &e) + { + if (e.error == IS_CORE_ERROR) + { @@ -148,7 +148,7 @@ diff --git a/gdb/main.c b/gdb/main.c + if (exec_bfd != NULL) + return; + } -+ throw_exception (e); ++ throw_exception (std::move (e)); + } +} + diff --git a/gdb-archer-vla-tests.patch b/gdb-archer-vla-tests.patch index fa4fa0d..26afd3e 100644 --- a/gdb-archer-vla-tests.patch +++ b/gdb-archer-vla-tests.patch @@ -2804,7 +2804,7 @@ new file mode 100644 +gdb_breakpoint [gdb_get_line_number "varx-allocated"] +gdb_continue_to_breakpoint "varx-allocated" +# $1 = (( ( 0, 0, 0, 0, 0, 0) ( 0, 0, 0, 0, 0, 0) --- , 0) ) ( ( 0, 0, ...) ...) ...) -+gdb_test "ptype varx" "type = real(\\(kind=4\\)|\\*4) \\(6,5:15,17:28\\)" "ptype varx allocated" ++gdb_test "ptype varx" "type = real(\\(kind=4\\)|\\*4), allocatable \\(6,5:15,17:28\\)" "ptype varx allocated" +# Intel Fortran Compiler 10.1.008 uses -1 there, GCC uses 1. +gdb_test "p l" "\\$\[0-9\]* = (\\.TRUE\\.|4294967295)" "p l if varx allocated" + @@ -2831,7 +2831,7 @@ new file mode 100644 +gdb_test "p varv(3, 7, 19)" "\\$\[0-9\]* = 6" "p varv(3, 7, 19) associated" +# Intel Fortran Compiler 10.1.008 uses -1 there, GCC uses 1. +gdb_test "p l" "\\$\[0-9\]* = (\\.TRUE\\.|4294967295)" "p l if varv associated" -+gdb_test "ptype varx" "type = real(\\(kind=4\\)|\\*4) \\(6,5:15,17:28\\)" "ptype varx with varv associated" ++gdb_test "ptype varx" "type = real(\\(kind=4\\)|\\*4), allocatable \\(6,5:15,17:28\\)" "ptype varx with varv associated" +# Intel Fortran Compiler 10.1.008 uses the pointer type. +gdb_test "ptype varv" "type = (PTR TO -> \\( )?real(\\(kind=4\\)|\\*4) \\(6,5:15,17:28\\)\\)?" "ptype varv associated" + @@ -2852,7 +2852,7 @@ new file mode 100644 +gdb_breakpoint [gdb_get_line_number "varx-deallocated"] +gdb_continue_to_breakpoint "varx-deallocated" +gdb_test "p varx" "\\$\[0-9\]* = " "p varx deallocated" -+gdb_test "ptype varx" {type = real\(kind=4\) \(:,:,:\)} "ptype varx deallocated" ++gdb_test "ptype varx" {type = real\(kind=4\), allocatable \(:,:,:\)} "ptype varx deallocated" +gdb_test "p l" "\\$\[0-9\]* = \\.FALSE\\." "p l if varx deallocated" +gdb_test "p varx(1,5,17)" {no such vector element \(vector not allocated\)} "p varx(1,5,17) deallocated" +gdb_test "ptype varx(1,5,17)" {no such vector element \(vector not allocated\)} "ptype varx(1,5,17) deallocated" diff --git a/gdb-vla-intel-fortran-vla-strings.patch b/gdb-vla-intel-fortran-vla-strings.patch index f6b6fc8..c931b9c 100644 --- a/gdb-vla-intel-fortran-vla-strings.patch +++ b/gdb-vla-intel-fortran-vla-strings.patch @@ -685,15 +685,15 @@ new file mode 100644 + +gdb_breakpoint [gdb_get_line_number "Before pointer assignment"] +gdb_continue_to_breakpoint "Before pointer assignment" -+gdb_test "print logp" "= \\(PTR TO -> \\( $logical \\)\\) 0x0" "print logp, not associated" ++gdb_test "print logp" "= \\(PTR TO -> \\( $logical\\)\\) 0x0" "print logp, not associated" +gdb_test "print *logp" "Cannot access memory at address 0x0" "print *logp, not associated" -+gdb_test "print comp" "= \\(PTR TO -> \\( $complex \\)\\) 0x0" "print comp, not associated" ++gdb_test "print comp" "= \\(PTR TO -> \\( $complex\\)\\) 0x0" "print comp, not associated" +gdb_test "print *comp" "Cannot access memory at address 0x0" "print *comp, not associated" -+gdb_test "print charp" "= \\(PTR TO -> \\( character\\*1 \\)\\) 0x0" "print charp, not associated" ++gdb_test "print charp" "= \\(PTR TO -> \\( character\\*1\\)\\) 0x0" "print charp, not associated" +gdb_test "print *charp" "Cannot access memory at address 0x0" "print *charp, not associated" -+gdb_test "print charap" "= \\(PTR TO -> \\( character\\*3 \\)\\) 0x0" "print charap, not associated" ++gdb_test "print charap" "= \\(PTR TO -> \\( character\\*3\\)\\) 0x0" "print charap, not associated" +gdb_test "print *charap" "Cannot access memory at address 0x0" "print *charap, not associated" -+gdb_test "print intp" "= \\(PTR TO -> \\( $int \\)\\) 0x0" "print intp, not associated" ++gdb_test "print intp" "= \\(PTR TO -> \\( $int\\)\\) 0x0" "print intp, not associated" +gdb_test "print *intp" "Cannot access memory at address 0x0" "print *intp, not associated" +set test "print intap, not associated" +gdb_test_multiple "print intap" $test { @@ -704,9 +704,9 @@ new file mode 100644 + pass $test + } +} -+gdb_test "print realp" "= \\(PTR TO -> \\( $real \\)\\) 0x0" "print realp, not associated" ++gdb_test "print realp" "= \\(PTR TO -> \\( $real\\)\\) 0x0" "print realp, not associated" +gdb_test "print *realp" "Cannot access memory at address 0x0" "print *realp, not associated" -+gdb_test "print \$my_var = intp" "= \\(PTR TO -> \\( $int \\)\\) 0x0" ++gdb_test "print \$my_var = intp" "= \\(PTR TO -> \\( $int\\)\\) 0x0" +set test "print cyclicp1, not associated" +gdb_test_multiple "print cyclicp1" $test { + -re "= \\( i = -?\\d+, p = 0x0 \\)\r\n$gdb_prompt $" { @@ -718,10 +718,10 @@ new file mode 100644 +} +set test "print cyclicp1%p, not associated" +gdb_test_multiple "print cyclicp1%p" $test { -+ -re "= \\(PTR TO -> \\( Type typewithpointer \\)\\) 0x0\r\n$gdb_prompt $" { ++ -re "= \\(PTR TO -> \\( Type typewithpointer\\)\\) 0x0\r\n$gdb_prompt $" { + pass $test + } -+ -re "= \\(PTR TO -> \\( Type typewithpointer \\)\\) \r\n$gdb_prompt $" { ++ -re "= \\(PTR TO -> \\( Type typewithpointer\\)\\) \r\n$gdb_prompt $" { + pass $test + } +} @@ -734,15 +734,15 @@ new file mode 100644 + +gdb_breakpoint [gdb_get_line_number "After value assignment"] +gdb_continue_to_breakpoint "After value assignment" -+gdb_test "print logp" "= \\(PTR TO -> \\( $logical \\)\\) $hex\( <.*>\)?" ++gdb_test "print logp" "= \\(PTR TO -> \\( $logical\\)\\) $hex\( <.*>\)?" +gdb_test "print *logp" "= \\.TRUE\\." -+gdb_test "print comp" "= \\(PTR TO -> \\( $complex \\)\\) $hex\( <.*>\)?" ++gdb_test "print comp" "= \\(PTR TO -> \\( $complex\\)\\) $hex\( <.*>\)?" +gdb_test "print *comp" "= \\(1,2\\)" -+gdb_test "print charp" "= \\(PTR TO -> \\( character\\*1 \\)\\) $hex\( <.*>\)?" ++gdb_test "print charp" "= \\(PTR TO -> \\( character\\*1\\)\\) $hex\( <.*>\)?" +gdb_test "print *charp" "= 'a'" -+gdb_test "print charap" "= \\(PTR TO -> \\( character\\*3 \\)\\) $hex\( <.*>\)?" ++gdb_test "print charap" "= \\(PTR TO -> \\( character\\*3\\)\\) $hex\( <.*>\)?" +gdb_test "print *charap" "= 'abc'" -+gdb_test "print intp" "= \\(PTR TO -> \\( $int \\)\\) $hex\( <.*>\)?" ++gdb_test "print intp" "= \\(PTR TO -> \\( $int\\)\\) $hex\( <.*>\)?" +gdb_test "print *intp" "= 10" +set test_name "print intap, associated" +gdb_test_multiple "print intap" $test_name { @@ -764,16 +764,16 @@ new file mode 100644 + pass $test_name + } +} -+gdb_test "print realp" "= \\(PTR TO -> \\( $real \\)\\) $hex\( <.*>\)?" ++gdb_test "print realp" "= \\(PTR TO -> \\( $real\\)\\) $hex\( <.*>\)?" +gdb_test "print *realp" "= 3\\.14000\\d+" -+gdb_test "print arrayOfPtr(2)%p" "= \\(PTR TO -> \\( Type two \\)\\) $hex\( <.*>\)?" ++gdb_test "print arrayOfPtr(2)%p" "= \\(PTR TO -> \\( Type two\\)\\) $hex\( <.*>\)?" +gdb_test "print *(arrayOfPtr(2)%p)" "= \\( ivla1 = \\(11, 12, 13\\), ivla2 = \\(\\( 211, 221\\) \\( 212, 222\\) \\) \\)" +set test_name "print arrayOfPtr(3)%p" +gdb_test_multiple $test_name $test_name { -+ -re "= \\(PTR TO -> \\( Type two \\)\\) \r\n$gdb_prompt $" { ++ -re "= \\(PTR TO -> \\( Type two\\)\\) \r\n$gdb_prompt $" { + pass $test_name + } -+ -re "= \\(PTR TO -> \\( Type two \\)\\) 0x0\r\n$gdb_prompt $" { ++ -re "= \\(PTR TO -> \\( Type two\\)\\) 0x0\r\n$gdb_prompt $" { + pass $test_name + } +} @@ -787,10 +787,10 @@ new file mode 100644 + } +} +gdb_test "print cyclicp1" "= \\( i = 1, p = $hex\( <.*>\)? \\)" -+gdb_test "print cyclicp1%p" "= \\(PTR TO -> \\( Type typewithpointer \\)\\) $hex\( <.*>\)?" ++gdb_test "print cyclicp1%p" "= \\(PTR TO -> \\( Type typewithpointer\\)\\) $hex\( <.*>\)?" +gdb_test "print *((integer*) &inta + 2)" "= 3" "print temporary pointer, array" +gdb_test "print *((integer*) &intvla + 3)" "= 4" "print temporary pointer, allocated vla" -+gdb_test "print \$pc" "= \\(PTR TO -> \\( void \\(\\)\\(\\)\\)\\) $hex " "Print program counter" ++gdb_test "print \$pc" "= \\(PTR TO -> \\( void \\(\\) \\(\\)\\)\\) $hex " "Print program counter" diff --git a/gdb/testsuite/gdb.fortran/pointers.f90 b/gdb/testsuite/gdb.fortran/pointers.f90 new file mode 100644 --- /dev/null @@ -947,11 +947,11 @@ new file mode 100644 + +gdb_breakpoint [gdb_get_line_number "Before pointer assignment"] +gdb_continue_to_breakpoint "Before pointer assignment" -+gdb_test "ptype logp" "type = PTR TO -> \\( $logical \\)" "ptype logp, not associated" -+gdb_test "ptype comp" "type = PTR TO -> \\( $complex \\)" "ptype comp, not associated" -+gdb_test "ptype charp" "type = PTR TO -> \\( character\\*1 \\)" "ptype charp, not associated" -+gdb_test "ptype charap" "type = PTR TO -> \\( character\\*3 \\)" "ptype charap, not associated" -+gdb_test "ptype intp" "type = PTR TO -> \\( $int \\)" "ptype intp, not associated" ++gdb_test "ptype logp" "type = PTR TO -> \\( $logical\\)" "ptype logp, not associated" ++gdb_test "ptype comp" "type = PTR TO -> \\( $complex\\)" "ptype comp, not associated" ++gdb_test "ptype charp" "type = PTR TO -> \\( character\\*1\\)" "ptype charp, not associated" ++gdb_test "ptype charap" "type = PTR TO -> \\( character\\*3\\)" "ptype charap, not associated" ++gdb_test "ptype intp" "type = PTR TO -> \\( $int\\)" "ptype intp, not associated" +set test "ptype intap, not associated" +gdb_test_multiple "ptype intap" $test { + -re "type = PTR TO -> \\( $int \\(:,:\\)\\)\r\n$gdb_prompt $" { @@ -961,17 +961,17 @@ new file mode 100644 + pass $test + } +} -+gdb_test "ptype realp" "type = PTR TO -> \\( $real \\)" "ptype realp, not associated" ++gdb_test "ptype realp" "type = PTR TO -> \\( $real\\)" "ptype realp, not associated" +gdb_test "ptype twop" \ + [multi_line "type = PTR TO -> \\( Type two" \ -+ " $int :: ivla1\\(:\\)" \ -+ " $int :: ivla2\\(:,:\\)" \ -+ "End Type two \\)"] \ ++ " $int, allocatable :: ivla1\\(:\\)" \ ++ " $int, allocatable :: ivla2\\(:,:\\)" \ ++ "End Type two\\)"] \ + "ptype twop, not associated" +gdb_test "ptype two" \ + [multi_line "type = Type two" \ -+ " $int :: ivla1\\(:\\)" \ -+ " $int :: ivla2\\(:,:\\)" \ ++ " $int, allocatable :: ivla1\\(:\\)" \ ++ " $int, allocatable :: ivla2\\(:,:\\)" \ + "End Type two"] + + @@ -979,9 +979,9 @@ new file mode 100644 +gdb_continue_to_breakpoint "Before value assignment" +gdb_test "ptype twop" \ + [multi_line "type = PTR TO -> \\( Type two" \ -+ " $int :: ivla1\\(:\\)" \ -+ " $int :: ivla2\\(:,:\\)" \ -+ "End Type two \\)"] ++ " $int, allocatable :: ivla1\\(:\\)" \ ++ " $int, allocatable :: ivla2\\(:,:\\)" \ ++ "End Type two\\)"] + + +gdb_breakpoint [gdb_get_line_number "After value assignment"] @@ -995,11 +995,11 @@ new file mode 100644 +gdb_test "ptype realv" "type = $real" + + -+gdb_test "ptype logp" "type = PTR TO -> \\( $logical \\)" -+gdb_test "ptype comp" "type = PTR TO -> \\( $complex \\)" -+gdb_test "ptype charp" "type = PTR TO -> \\( character\\*1 \\)" -+gdb_test "ptype charap" "type = PTR TO -> \\( character\\*3 \\)" -+gdb_test "ptype intp" "type = PTR TO -> \\( $int \\)" ++gdb_test "ptype logp" "type = PTR TO -> \\( $logical\\)" ++gdb_test "ptype comp" "type = PTR TO -> \\( $complex\\)" ++gdb_test "ptype charp" "type = PTR TO -> \\( character\\*1\\)" ++gdb_test "ptype charap" "type = PTR TO -> \\( character\\*3\\)" ++gdb_test "ptype intp" "type = PTR TO -> \\( $int\\)" +set test "ptype intap" +gdb_test_multiple $test $test { + -re "type = $int \\(10,2\\)\r\n$gdb_prompt $" { @@ -1009,7 +1009,7 @@ new file mode 100644 + pass $test + } +} -+gdb_test "ptype realp" "type = PTR TO -> \\( $real \\)" ++gdb_test "ptype realp" "type = PTR TO -> \\( $real\\)" diff --git a/gdb/testsuite/gdb.fortran/vla-ptype.exp b/gdb/testsuite/gdb.fortran/vla-ptype.exp --- a/gdb/testsuite/gdb.fortran/vla-ptype.exp +++ b/gdb/testsuite/gdb.fortran/vla-ptype.exp @@ -1020,13 +1020,13 @@ diff --git a/gdb/testsuite/gdb.fortran/vla-ptype.exp b/gdb/testsuite/gdb.fortran -gdb_test "ptype vla1" "type = " "ptype vla1 not initialized" -gdb_test "ptype vla2" "type = " "ptype vla2 not initialized" -gdb_test "ptype pvla" "type = " "ptype pvla not initialized" -+gdb_test "ptype vla1" "type = $real \\(:,:,:\\)" "ptype vla1 not initialized" -+gdb_test "ptype vla2" "type = $real \\(:,:,:\\)" "ptype vla2 not initialized" ++gdb_test "ptype vla1" "type = $real, allocatable \\(:,:,:\\)" "ptype vla1 not initialized" ++gdb_test "ptype vla2" "type = $real, allocatable \\(:,:,:\\)" "ptype vla2 not initialized" +gdb_test "ptype pvla" "type = $real \\(:,:,:\\)" "ptype pvla not initialized" gdb_test "ptype vla1(3, 6, 9)" "no such vector element \\\(vector not allocated\\\)" \ "ptype vla1(3, 6, 9) not initialized" gdb_test "ptype vla2(5, 45, 20)" \ -@@ -81,20 +81,20 @@ gdb_test "ptype vla2(5, 45, 20)" "type = $real" \ +@@ -81,24 +81,24 @@ gdb_test "ptype vla2(5, 45, 20)" "type = $real" \ gdb_breakpoint [gdb_get_line_number "pvla-deassociated"] gdb_continue_to_breakpoint "pvla-deassociated" @@ -1039,17 +1039,22 @@ diff --git a/gdb/testsuite/gdb.fortran/vla-ptype.exp b/gdb/testsuite/gdb.fortran gdb_breakpoint [gdb_get_line_number "vla1-deallocated"] gdb_continue_to_breakpoint "vla1-deallocated" -gdb_test "ptype vla1" "type = " "ptype vla1 not allocated" -+gdb_test "ptype vla1" "type = $real \\(:,:,:\\)" "ptype vla1 not allocated" ++gdb_test "ptype vla1" "type = $real, allocatable \\(:,:,:\\)" "ptype vla1 not allocated" gdb_test "ptype vla1(3, 6, 9)" "no such vector element \\\(vector not allocated\\\)" \ "ptype vla1(3, 6, 9) not allocated" gdb_breakpoint [gdb_get_line_number "vla2-deallocated"] gdb_continue_to_breakpoint "vla2-deallocated" -gdb_test "ptype vla2" "type = " "ptype vla2 not allocated" -+gdb_test "ptype vla2" "type = $real \\(:,:,:\\)" "ptype vla2 not allocated" ++gdb_test "ptype vla2" "type = $real, allocatable \\(:,:,:\\)" "ptype vla2 not allocated" gdb_test "ptype vla2(5, 45, 20)" \ "no such vector element \\\(vector not allocated\\\)" \ "ptype vla2(5, 45, 20) not allocated" + + gdb_breakpoint [gdb_get_line_number "vla1-neg-bounds"] + gdb_continue_to_breakpoint "vla1-neg-bounds" +-gdb_test "ptype vla1" "type = $real \\(-2:1,-5:4,-3:-1\\)" "ptype vla1 negative bounds" ++gdb_test "ptype vla1" "type = $real, allocatable \\(-2:1,-5:4,-3:-1\\)" "ptype vla1 negative bounds" diff --git a/gdb/testsuite/gdb.fortran/vla-strings.exp b/gdb/testsuite/gdb.fortran/vla-strings.exp new file mode 100644 --- /dev/null @@ -1089,7 +1094,7 @@ new file mode 100644 +gdb_continue_to_breakpoint "var_char-allocated-1" +set test "whatis var_char first time" +gdb_test_multiple "whatis var_char" $test { -+ -re "type = PTR TO -> \\( character\\*10 \\)\r\n$gdb_prompt $" { ++ -re "type = PTR TO -> \\( character\\*10\\)\r\n$gdb_prompt $" { + pass $test + } + -re "type = character\\*10\r\n$gdb_prompt $" { @@ -1098,7 +1103,7 @@ new file mode 100644 +} +set test "ptype var_char first time" +gdb_test_multiple "ptype var_char" $test { -+ -re "type = PTR TO -> \\( character\\*10 \\)\r\n$gdb_prompt $" { ++ -re "type = PTR TO -> \\( character\\*10\\)\r\n$gdb_prompt $" { + pass $test + } + -re "type = character\\*10\r\n$gdb_prompt $" { @@ -1116,7 +1121,7 @@ new file mode 100644 +gdb_continue_to_breakpoint "var_char-filled-1" +set test "print var_char, var_char-filled-1" +gdb_test_multiple "print var_char" $test { -+ -re "= \\(PTR TO -> \\( character\\*3 \\)\\) $hex\r\n$gdb_prompt $" { ++ -re "= \\(PTR TO -> \\( character\\*3\\)\\) $hex\r\n$gdb_prompt $" { + gdb_test "print *var_char" "= 'foo'" "print *var_char, var_char-filled-1" + pass $test + } @@ -1126,7 +1131,7 @@ new file mode 100644 +} +set test "ptype var_char, var_char-filled-1" +gdb_test_multiple "ptype var_char" $test { -+ -re "type = PTR TO -> \\( character\\*3 \\)\r\n$gdb_prompt $" { ++ -re "type = PTR TO -> \\( character\\*3\\)\r\n$gdb_prompt $" { + pass $test + } + -re "type = character\\*3\r\n$gdb_prompt $" { @@ -1141,7 +1146,7 @@ new file mode 100644 +gdb_continue_to_breakpoint "var_char-filled-2" +set test "print var_char, var_char-filled-2" +gdb_test_multiple "print var_char" $test { -+ -re "= \\(PTR TO -> \\( character\\*6 \\)\\) $hex\r\n$gdb_prompt $" { ++ -re "= \\(PTR TO -> \\( character\\*6\\)\\) $hex\r\n$gdb_prompt $" { + gdb_test "print *var_char" "= 'foobar'" "print *var_char, var_char-filled-2" + pass $test + } @@ -1151,7 +1156,7 @@ new file mode 100644 +} +set test "ptype var_char, var_char-filled-2" +gdb_test_multiple "ptype var_char" $test { -+ -re "type = PTR TO -> \\( character\\*6 \\)\r\n$gdb_prompt $" { ++ -re "type = PTR TO -> \\( character\\*6\\)\r\n$gdb_prompt $" { + pass $test + } + -re "type = character\\*6\r\n$gdb_prompt $" { @@ -1273,11 +1278,11 @@ diff --git a/gdb/testsuite/gdb.mi/mi-vla-fortran.exp b/gdb/testsuite/gdb.mi/mi-v "500\\^done,value=\"\"" "evaluate not allocated vla, before allocation" -mi_create_varobj_checked vla1_not_allocated vla1 "" \ -+mi_create_varobj_checked vla1_not_allocated vla1 "$real \\(:\\)" \ ++mi_create_varobj_checked vla1_not_allocated vla1 "$real, allocatable \\(:\\)" \ "create local variable vla1_not_allocated" mi_gdb_test "501-var-info-type vla1_not_allocated" \ - "501\\^done,type=\"\"" \ -+ "501\\^done,type=\"$real \\(:\\)\"" \ ++ "501\\^done,type=\"$real, allocatable \\(:\\)\"" \ "info type variable vla1_not_allocated" mi_gdb_test "502-var-show-format vla1_not_allocated" \ "502\\^done,format=\"natural\"" \ diff --git a/gdb-vla-intel-tests.patch b/gdb-vla-intel-tests.patch index 36c97ab..d57c27c 100644 --- a/gdb-vla-intel-tests.patch +++ b/gdb-vla-intel-tests.patch @@ -5,6 +5,25 @@ Subject: gdb-vla-intel-tests.patch ;;=fedoratest +diff --git a/gdb/testsuite/gdb.fortran/ptr-indentation.exp b/gdb/testsuite/gdb.fortran/ptr-indentation.exp +--- a/gdb/testsuite/gdb.fortran/ptr-indentation.exp ++++ b/gdb/testsuite/gdb.fortran/ptr-indentation.exp +@@ -37,5 +37,5 @@ gdb_continue_to_breakpoint "BP1" + gdb_test "ptype tinsta" \ + [multi_line "type = Type tuserdef" \ + " $int :: i" \ +- " PTR TO -> \\( $real :: ptr \\)" \ ++ " PTR TO -> \\( $real :: ptr\\)" \ + "End Type tuserdef"] +diff --git a/gdb/testsuite/gdb.fortran/ptype-on-functions.exp b/gdb/testsuite/gdb.fortran/ptype-on-functions.exp +--- a/gdb/testsuite/gdb.fortran/ptype-on-functions.exp ++++ b/gdb/testsuite/gdb.fortran/ptype-on-functions.exp +@@ -42,4 +42,4 @@ gdb_test "ptype say_numbers" \ + "type = void \\(integer\\(kind=4\\), integer\\(kind=4\\), integer\\(kind=4\\)\\)" + + gdb_test "ptype fun_ptr" \ +- "type = PTR TO -> \\( integer\\(kind=4\\) \\(\\) \\(REF TO -> \\( integer\\(kind=4\\) \\)\\) \\)" ++ "type = PTR TO -> \\( integer\\(kind=4\\) \\(\\) \\(REF TO -> \\( integer\\(kind=4\\)\\)\\)\\)" diff --git a/gdb/testsuite/gdb.fortran/vla-func.exp b/gdb/testsuite/gdb.fortran/vla-func.exp new file mode 100644 --- /dev/null @@ -42,7 +61,7 @@ new file mode 100644 +gdb_continue_to_breakpoint "func1-vla-passed" +gdb_test "print vla" " = \\( *\\( *22, *22, *22,\[()22, .\]*\\)" \ + "print vla (func1)" -+gdb_test "ptype vla" "type = integer\\\(kind=4\\\) \\\(10,10\\\)" \ ++gdb_test "ptype vla" "type = integer\\\(kind=4\\\), allocatable \\\(10,10\\\)" \ + "ptype vla (func1)" + +gdb_breakpoint [gdb_get_line_number "func1-vla-modified"] @@ -69,7 +88,7 @@ new file mode 100644 +gdb_continue_to_breakpoint "func2-returned" +gdb_test "print vla3" " = \\\(1, 2, 44, 4, 44, 44, 44, 8, 44, 44\\\)" \ + "print vla3 (after func2)" -+gdb_test "ptype vla3" "type = integer\\\(kind=4\\\) \\\(10\\\)" \ ++gdb_test "ptype vla3" "type = integer\\\(kind=4\\\), allocatable \\\(10\\\)" \ + "ptype vla3 (after func2)" diff --git a/gdb/testsuite/gdb.fortran/vla-func.f90 b/gdb/testsuite/gdb.fortran/vla-func.f90 new file mode 100644 @@ -147,6 +166,16 @@ new file mode 100644 + + ret = .TRUE. ! func2-returned +end program vla_func +diff --git a/gdb/testsuite/gdb.fortran/vla-ptr-info.exp b/gdb/testsuite/gdb.fortran/vla-ptr-info.exp +--- a/gdb/testsuite/gdb.fortran/vla-ptr-info.exp ++++ b/gdb/testsuite/gdb.fortran/vla-ptr-info.exp +@@ -28,5 +28,5 @@ if ![runto_main] { + # Check the status of a pointer to a dynamic array. + gdb_breakpoint [gdb_get_line_number "pvla-associated"] + gdb_continue_to_breakpoint "pvla-associated" +-gdb_test "print &pvla" " = \\(PTR TO -> \\( real\\(kind=4\\) \\(10,10,10\\) \\)\\) ${hex}" \ ++gdb_test "print &pvla" " = \\(PTR TO -> \\( real\\(kind=4\\) \\(10,10,10\\)\\)\\) ${hex}" \ + "print pvla pointer information" diff --git a/gdb/testsuite/gdb.fortran/vla-stringsold.exp b/gdb/testsuite/gdb.fortran/vla-stringsold.exp new file mode 100644 --- /dev/null @@ -185,11 +214,11 @@ new file mode 100644 +gdb_breakpoint [gdb_get_line_number "var_char-allocated-1"] +gdb_continue_to_breakpoint "var_char-allocated-1" +gdb_test "print var_char" \ -+ " = \\(PTR TO -> \\( character\\*10 \\)\\) ${hex}" \ ++ " = \\(PTR TO -> \\( character\\*10\\)\\) ${hex}" \ + "print var_char after allocated first time" -+gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*10 \\)" \ ++gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*10\\)" \ + "whatis var_char first time" -+gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*10 \\)" \ ++gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*10\\)" \ + "ptype var_char first time" +gdb_test "next" "\\d+.*var_char = 'foo'.*" \ + "next to allocation status of var_char" @@ -198,13 +227,13 @@ new file mode 100644 +gdb_breakpoint [gdb_get_line_number "var_char-filled-1"] +gdb_continue_to_breakpoint "var_char-filled-1" +gdb_test "print var_char" \ -+ " = \\(PTR TO -> \\( character\\*3 \\)\\) ${hex}" \ ++ " = \\(PTR TO -> \\( character\\*3\\)\\) ${hex}" \ + "print var_char after filled first time" +gdb_test "print *var_char" " = 'foo'" \ + "print *var_char after filled first time" -+gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*3 \\)" \ ++gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*3\\)" \ + "whatis var_char after filled first time" -+gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*3 \\)" \ ++gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*3\\)" \ + "ptype var_char after filled first time" +gdb_test "print var_char(1)" " = 102 'f'" "print var_char(1)" +gdb_test "print var_char(3)" " = 111 'o'" "print var_char(3)" @@ -212,46 +241,46 @@ new file mode 100644 +gdb_breakpoint [gdb_get_line_number "var_char-filled-2"] +gdb_continue_to_breakpoint "var_char-filled-2" +gdb_test "print var_char" \ -+ " = \\(PTR TO -> \\( character\\*6 \\)\\) ${hex}" \ ++ " = \\(PTR TO -> \\( character\\*6\\)\\) ${hex}" \ + "print var_char after allocated second time" +gdb_test "print *var_char" " = 'foobar'" \ + "print *var_char after allocated second time" -+gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*6 \\)" \ ++gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*6\\)" \ + "whatis var_char second time" -+gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*6 \\)" \ ++gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*6\\)" \ + "ptype var_char second time" + +gdb_breakpoint [gdb_get_line_number "var_char-empty"] +gdb_continue_to_breakpoint "var_char-empty" +gdb_test "print var_char" \ -+ " = \\(PTR TO -> \\( character\\*0 \\)\\) ${hex}" \ ++ " = \\(PTR TO -> \\( character\\*0\\)\\) ${hex}" \ + "print var_char after set empty" +gdb_test "print *var_char" " = \"\"" "print *var_char after set empty" -+gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*0 \\)" \ ++gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*0\\)" \ + "whatis var_char after set empty" -+gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*0 \\)" \ ++gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*0\\)" \ + "ptype var_char after set empty" + +gdb_breakpoint [gdb_get_line_number "var_char-allocated-3"] +gdb_continue_to_breakpoint "var_char-allocated-3" +gdb_test "print var_char" \ -+ " = \\(PTR TO -> \\( character\\*21 \\)\\) ${hex}" \ ++ " = \\(PTR TO -> \\( character\\*21\\)\\) ${hex}" \ + "print var_char after allocated third time" -+gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*21 \\)" \ ++gdb_test "whatis var_char" "type = PTR TO -> \\( character\\*21\\)" \ + "whatis var_char after allocated third time" -+gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*21 \\)" \ ++gdb_test "ptype var_char" "type = PTR TO -> \\( character\\*21\\)" \ + "ptype var_char after allocated third time" + +gdb_breakpoint [gdb_get_line_number "var_char_p-associated"] +gdb_continue_to_breakpoint "var_char_p-associated" +gdb_test "print var_char_p" \ -+ " = \\(PTR TO -> \\( character\\*7 \\)\\) ${hex}" \ ++ " = \\(PTR TO -> \\( character\\*7\\)\\) ${hex}" \ + "print var_char_p after associated" +gdb_test "print *var_char_p" " = 'johndoe'" \ + "print *var_char_ after associated" -+gdb_test "whatis var_char_p" "type = PTR TO -> \\( character\\*7 \\)" \ ++gdb_test "whatis var_char_p" "type = PTR TO -> \\( character\\*7\\)" \ + "whatis var_char_p after associated" -+gdb_test "ptype var_char_p" "type = PTR TO -> \\( character\\*7 \\)" \ ++gdb_test "ptype var_char_p" "type = PTR TO -> \\( character\\*7\\)" \ + "ptype var_char_p after associated" diff --git a/gdb/testsuite/gdb.fortran/vla-stringsold.f90 b/gdb/testsuite/gdb.fortran/vla-stringsold.f90 new file mode 100644 @@ -298,3 +327,21 @@ new file mode 100644 + var_char_p => null() + l = associated(var_char_p) ! var_char_p-not-associated +end program vla_strings +diff --git a/gdb/testsuite/gdb.fortran/whatis_type.exp b/gdb/testsuite/gdb.fortran/whatis_type.exp +--- a/gdb/testsuite/gdb.fortran/whatis_type.exp ++++ b/gdb/testsuite/gdb.fortran/whatis_type.exp +@@ -44,7 +44,7 @@ gdb_test "whatis t2" "type = Type t2" + gdb_test "whatis t2v" "type = Type t2" + gdb_test "whatis t3" "type = Type t3" + gdb_test "whatis t3v" "type = Type t3" +-gdb_test "whatis t3p" "type = PTR TO -> \\( Type t3 \\)" ++gdb_test "whatis t3p" "type = PTR TO -> \\( Type t3\\)" + + gdb_test "ptype t1" \ + [multi_line "type = Type t1" \ +@@ -75,4 +75,4 @@ gdb_test "ptype t3p" \ + [multi_line "type = PTR TO -> \\( Type t3" \ + " $int :: t3_i" \ + " Type t2 :: t2_n" \ +- "End Type t3 \\)"] ++ "End Type t3\\)"] diff --git a/gdb.spec b/gdb.spec index a64bc19..ffe139f 100644 --- a/gdb.spec +++ b/gdb.spec @@ -1133,6 +1133,9 @@ fi %changelog * Wed May 1 2019 Sergio Durigan Junior - 8.3.50.20190501-11 - Rebase to FSF GDB 8.3.50.20190501 (8.4pre). +- Adjust VLA testcases. +- Fix "gcore does not support COREFILTER_ELF_HEADERS" (RH BZ 1371380, + Sergio Durigan Junior). * Mon Apr 29 2019 Sergio Durigan Junior - 8.3.50.20190425-10 - Share '/usr/bin/gdb-add-index' between gdb-minimal and gdb-headless