File fixup-gdb-vla-intel-fortran-vla-strings.patch of Package gdb

fixup gdb-vla-intel-fortran-vla-strings.patch

---
 gdb/f-typeprint.c                                |  2 +-
 gdb/testsuite/gdb.dwarf2/dynarr-ptr.exp          |  4 +--
 gdb/testsuite/gdb.fortran/mixed-lang-stack.exp   |  5 +++
 gdb/testsuite/gdb.fortran/pointer-to-pointer.exp |  6 +++-
 gdb/testsuite/gdb.fortran/pointers.exp           | 42 ++++++++++++------------
 gdb/testsuite/gdb.fortran/print_type.exp         | 18 +++++-----
 gdb/testsuite/gdb.fortran/vla-strings.exp        | 12 +++----
 gdb/testsuite/gdb.fortran/vla-value.exp          |  8 ++---
 8 files changed, 53 insertions(+), 44 deletions(-)

diff --git a/gdb/f-typeprint.c b/gdb/f-typeprint.c
index 9c746fa91c3..c33bd68fe0f 100644
--- a/gdb/f-typeprint.c
+++ b/gdb/f-typeprint.c
@@ -250,7 +250,7 @@ f_type_print_varspec_suffix (struct type *type, struct ui_file *stream,
     case TYPE_CODE_REF:
       f_type_print_varspec_suffix (TYPE_TARGET_TYPE (type), stream, 0, 1, 0,
 				   arrayprint_recurse_level, false);
-      fprintf_filtered (stream, ")");
+      fprintf_filtered (stream, " )");
       break;
 
     case TYPE_CODE_FUNC:
diff --git a/gdb/testsuite/gdb.dwarf2/dynarr-ptr.exp b/gdb/testsuite/gdb.dwarf2/dynarr-ptr.exp
index 2f6b17c6dc5..35a4fd78e19 100644
--- a/gdb/testsuite/gdb.dwarf2/dynarr-ptr.exp
+++ b/gdb/testsuite/gdb.dwarf2/dynarr-ptr.exp
@@ -179,7 +179,7 @@ gdb_test "print foo.three_ptr'length" \
          " = 3"
 
 gdb_test "ptype foo.three_ptr" \
-         " = access array \\(<>\\) of integer"
+         " = access array \\(1 \.\. 3\\) of integer"
 
 # foo.three_ptr_tdef.all
 
@@ -289,7 +289,7 @@ gdb_test "print foo.five_ptr'length" \
          " = 5"
 
 gdb_test "ptype foo.five_ptr" \
-         " = access array \\(<>\\) of integer"
+         " = access array \\(2 \.\. 6\\) of integer"
 
 # foo.five_ptr_tdef.all
 
diff --git a/gdb/testsuite/gdb.fortran/mixed-lang-stack.exp b/gdb/testsuite/gdb.fortran/mixed-lang-stack.exp
index edf2508537d..617c6a36292 100644
--- a/gdb/testsuite/gdb.fortran/mixed-lang-stack.exp
+++ b/gdb/testsuite/gdb.fortran/mixed-lang-stack.exp
@@ -54,6 +54,7 @@ proc run_tests { lang } {
 	if { $lang == "c" || $lang == "c++" } {
 	    gdb_test "set language c" \
 		"Warning: the current language does not match this frame."
+	    setup_kfail *-*-* bsc#1178580
 	} else {
 	    gdb_test_no_output "set language $lang"
 	}
@@ -156,6 +157,10 @@ proc run_tests { lang } {
 			      "g = ${g_pattern}" \
 			      "_e = 6" ]
 
+	if { $lang == "c" || $lang == "c++" } {
+	    setup_kfail *-*-* bsc#1178580
+	}
+
 	gdb_test "info args" $args_pattern \
 	    "info args in frame #7"
     }
diff --git a/gdb/testsuite/gdb.fortran/pointer-to-pointer.exp b/gdb/testsuite/gdb.fortran/pointer-to-pointer.exp
index 4c643c29903..c93300746de 100644
--- a/gdb/testsuite/gdb.fortran/pointer-to-pointer.exp
+++ b/gdb/testsuite/gdb.fortran/pointer-to-pointer.exp
@@ -43,7 +43,11 @@ set l_buffer_type [multi_line \
 		       "Type l_buffer" \
 		       "    $real4 :: alpha\\(:\\)" \
 		       "End Type l_buffer" ]
+set l_buffer_type_2 [multi_line \
+			 "Type l_buffer" \
+			 "    $real4 :: alpha\\(5\\)" \
+			 "End Type l_buffer" ]
 
-gdb_test "ptype buffer" "type = PTR TO -> \\( ${l_buffer_type} \\)"
+gdb_test "ptype buffer" "type = PTR TO -> \\( ${l_buffer_type_2} \\)"
 gdb_test "ptype *buffer" "type = ${l_buffer_type}"
 gdb_test "ptype buffer%alpha" "type = $real4 \\(5\\)"
diff --git a/gdb/testsuite/gdb.fortran/pointers.exp b/gdb/testsuite/gdb.fortran/pointers.exp
index 916897005f2..ddcc1036765 100644
--- a/gdb/testsuite/gdb.fortran/pointers.exp
+++ b/gdb/testsuite/gdb.fortran/pointers.exp
@@ -35,28 +35,28 @@ set complex [fortran_complex4]
 
 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 {
-  -re " = \\(PTR TO -> \\( $int \\(:,:\\)\\)\\) <not associated>\r\n$gdb_prompt $" {
+  -re " = \\(PTR TO -> \\( $int \\(:,:\\) \\)\\) <not associated>\r\n$gdb_prompt $" {
     pass $test
   }
   -re " = <not associated>\r\n$gdb_prompt $" {
     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 $" {
@@ -68,10 +68,10 @@ gdb_test_multiple "print cyclicp1" $test {
 }
 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\\)\\) <not associated>\r\n$gdb_prompt $" {
+  -re "= \\(PTR TO -> \\( Type typewithpointer \\)\\) <not associated>\r\n$gdb_prompt $" {
     pass $test
   }
 }
@@ -84,15 +84,15 @@ gdb_test "print *(twop)%ivla2" "= <not allocated>"
 
 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 {
@@ -114,16 +114,16 @@ gdb_test_multiple "print intvlap" $test_name {
     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\\)\\) <not associated>\r\n$gdb_prompt $" {
+  -re "= \\(PTR TO -> \\( Type two \\)\\) <not associated>\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
   }
 }
@@ -137,7 +137,7 @@ gdb_test_multiple "print *(arrayOfPtr(3)%p)" $test_name {
   }
 }
 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 <pointers\\+\\d+>" "Print program counter"
+gdb_test "print \$pc" "= \\(PTR TO -> \\( void \\(\\) \\(\\) \\)\\) $hex <pointers\\+\\d+>" "Print program counter"
diff --git a/gdb/testsuite/gdb.fortran/print_type.exp b/gdb/testsuite/gdb.fortran/print_type.exp
index 5a4aa35d7cb..529a78e5b89 100755
--- a/gdb/testsuite/gdb.fortran/print_type.exp
+++ b/gdb/testsuite/gdb.fortran/print_type.exp
@@ -43,7 +43,7 @@ set complex [fortran_complex4]
 # matches the string TYPE.
 proc check_pointer_type { var_name type } {
     gdb_test "ptype ${var_name}" \
-	"type = PTR TO -> \\( ${type}\\)"
+	"type = PTR TO -> \\( ${type} \\)"
 }
 
 gdb_breakpoint [gdb_get_line_number "Before pointer assignment"]
@@ -88,7 +88,7 @@ gdb_test "ptype twop" \
     [multi_line "type = PTR TO -> \\( Type two" \
                 "    $int, allocatable :: ivla1\\(:\\)" \
                 "    $int, allocatable :: ivla2\\(:,:\\)" \
-                "End Type two\\)"]
+                "End Type two \\)"]
 
 
 gdb_breakpoint [gdb_get_line_number "After value assignment"]
@@ -101,18 +101,18 @@ gdb_test "ptype intv" "type = $int"
 gdb_test "ptype inta" "type = $int \\(10,2\\)"
 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 $" {
         pass $test
     }
-    -re "type = PTR TO -> \\( $int \\(10,2\\)\\)\r\n$gdb_prompt $" {
+    -re "type = PTR TO -> \\( $int \\(10,2\\) \\)\r\n$gdb_prompt $" {
         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-strings.exp b/gdb/testsuite/gdb.fortran/vla-strings.exp
index 5d0662823a0..484fdcb652a 100644
--- a/gdb/testsuite/gdb.fortran/vla-strings.exp
+++ b/gdb/testsuite/gdb.fortran/vla-strings.exp
@@ -32,7 +32,7 @@ gdb_breakpoint [gdb_get_line_number "var_char-allocated-1"]
 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 $" {
@@ -41,7 +41,7 @@ gdb_test_multiple "whatis var_char" $test {
 }
 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 $" {
@@ -59,7 +59,7 @@ gdb_breakpoint [gdb_get_line_number "var_char-filled-1"]
 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
     }
@@ -69,7 +69,7 @@ gdb_test_multiple "print var_char" $test {
 }
 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 $" {
@@ -84,7 +84,7 @@ gdb_breakpoint [gdb_get_line_number "var_char-filled-2"]
 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
     }
@@ -94,7 +94,7 @@ gdb_test_multiple "print var_char" $test {
 }
 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 $" {
diff --git a/gdb/testsuite/gdb.fortran/vla-value.exp b/gdb/testsuite/gdb.fortran/vla-value.exp
index 49f22e7904e..be0a2d47fdf 100644
--- a/gdb/testsuite/gdb.fortran/vla-value.exp
+++ b/gdb/testsuite/gdb.fortran/vla-value.exp
@@ -37,7 +37,7 @@ gdb_breakpoint [gdb_get_line_number "vla1-init"]
 gdb_continue_to_breakpoint "vla1-init"
 gdb_test "print vla1" " = <not allocated>" "print non-allocated vla1"
 gdb_test "print &vla1" \
-  " = \\\(PTR TO -> \\\( $real, allocatable \\\(:,:,:\\\)\\\)\\\) $hex" \
+  " = \\\(PTR TO -> \\\( $real, allocatable \\\(:,:,:\\\) \\\)\\\) $hex" \
   "print non-allocated &vla1"
 gdb_test "print vla1(1,1,1)" "no such vector element \\\(vector not allocated\\\)" \
   "print member in non-allocated vla1 (1)"
@@ -58,7 +58,7 @@ with_timeout_factor 15 {
 	"step over value assignment of vla1"
 }
 gdb_test "print &vla1" \
-  " = \\\(PTR TO -> \\\( $real, allocatable \\\(10,10,10\\\)\\\)\\\) $hex" \
+  " = \\\(PTR TO -> \\\( $real, allocatable \\\(10,10,10\\\) \\\)\\\) $hex" \
   "print allocated &vla1"
 gdb_test "print vla1(3, 6, 9)" " = 1311" "print allocated vla1(3,6,9)"
 gdb_test "print vla1(1, 3, 8)" " = 1311" "print allocated vla1(1,3,8)"
@@ -78,7 +78,7 @@ gdb_test "print vla1(9, 9, 9)" " = 999" \
 # Try to access values in undefined pointer to VLA (dangling)
 gdb_test "print pvla" " = <not associated>" "print undefined pvla"
 gdb_test "print &pvla" \
-  " = \\\(PTR TO -> \\\( $real \\\(:,:,:\\\)\\\)\\\) $hex" \
+  " = \\\(PTR TO -> \\\( $real \\\(:,:,:\\\) \\\)\\\) $hex" \
   "print non-associated &pvla"
 gdb_test "print pvla(1, 3, 8)" "no such vector element \\\(vector not associated\\\)" \
   "print undefined pvla(1,3,8)"
@@ -87,7 +87,7 @@ gdb_test "print pvla(1, 3, 8)" "no such vector element \\\(vector not associated
 gdb_breakpoint [gdb_get_line_number "pvla-associated"]
 gdb_continue_to_breakpoint "pvla-associated"
 gdb_test "print &pvla" \
-  " = \\\(PTR TO -> \\\( $real \\\(10,10,10\\\)\\\)\\\) $hex" \
+  " = \\\(PTR TO -> \\\( $real \\\(10,10,10\\\) \\\)\\\) $hex" \
   "print associated &pvla"
 gdb_test "print pvla(3, 6, 9)" " = 42" "print associated pvla(3,6,9)"
 gdb_test "print pvla(1, 3, 8)" " = 1001" "print associated pvla(1,3,8)"
openSUSE Build Service is sponsored by