2012-07-04 Pedro Alves <palves@redhat.com>
authorPedro Alves <palves@redhat.com>
Wed, 4 Jul 2012 10:48:32 +0000 (10:48 +0000)
committerPedro Alves <palves@redhat.com>
Wed, 4 Jul 2012 10:48:32 +0000 (10:48 +0000)
* gdb.ada/packed_tagged/comp_bug.adb: Convert to unix text line
endings.
* gdb.mi/mi-reverse.exp: Convert to unix text line endings.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.ada/packed_tagged/comp_bug.adb
gdb/testsuite/gdb.mi/mi-reverse.exp

index e993c49477e134964e3d98e2e82115c627139ad3..5bd78539b6fae4b4e8e987a9cb5f790685a8859a 100644 (file)
@@ -1,3 +1,9 @@
+2012-07-04  Pedro Alves  <palves@redhat.com>
+
+       * gdb.ada/packed_tagged/comp_bug.adb: Convert to unix text line
+       endings.
+       * gdb.mi/mi-reverse.exp: Convert to unix text line endings.
+
 2012-07-03  Stan Shebs  <stan@codesourcery.com>
 
        * gdb.base/info-os.c (main): Retry resource acquisition until an
index 64bcbfb868b8c5fd62e3ef304a61c44fb8f32d59..5899b09b5e2345b4092ed6031063c772a4cf2f09 100644 (file)
@@ -1,40 +1,40 @@
---  Copyright 2008-2012 Free Software Foundation, Inc.\r
---\r
---  This program is free software; you can redistribute it and/or modify\r
---  it under the terms of the GNU General Public License as published by\r
---  the Free Software Foundation; either version 3 of the License, or\r
---  (at your option) any later version.\r
---\r
---  This program is distributed in the hope that it will be useful,\r
---  but WITHOUT ANY WARRANTY; without even the implied warranty of\r
---  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
---  GNU General Public License for more details.\r
---\r
---  You should have received a copy of the GNU General Public License\r
---  along with this program.  If not, see <http://www.gnu.org/licenses/>.\r
-\r
-procedure Comp_Bug is\r
-\r
-   type Number_T (Exists : Boolean := False) is\r
-      record\r
-         case Exists is\r
-            when True =>\r
-               Value : Natural range 0 .. 255;\r
-            when False =>\r
-               null;\r
-         end case;\r
-      end record;\r
-   pragma Pack (Number_T);\r
-\r
-   X : Number_T;\r
-   --  brobecker/2007-09-06: At the time when this issue (G904-017) was\r
-   --  reported, the problem only reproduced if the variable was declared\r
-   --  inside a function (in other words, stored on stack).  Although\r
-   --  the issue probably still existed when I tried moving this variable\r
-   --  to a package spec, the symptoms inside GDB disappeared.\r
-begin\r
-   X := (Exists => True, Value => 10);\r
-   if X.Exists then -- STOP\r
-      X.Value := X.Value + 1;\r
-   end if;\r
-end Comp_Bug;\r
+--  Copyright 2008-2012 Free Software Foundation, Inc.
+--
+--  This program is free software; you can redistribute it and/or modify
+--  it under the terms of the GNU General Public License as published by
+--  the Free Software Foundation; either version 3 of the License, or
+--  (at your option) any later version.
+--
+--  This program is distributed in the hope that it will be useful,
+--  but WITHOUT ANY WARRANTY; without even the implied warranty of
+--  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+--  GNU General Public License for more details.
+--
+--  You should have received a copy of the GNU General Public License
+--  along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+procedure Comp_Bug is
+
+   type Number_T (Exists : Boolean := False) is
+      record
+         case Exists is
+            when True =>
+               Value : Natural range 0 .. 255;
+            when False =>
+               null;
+         end case;
+      end record;
+   pragma Pack (Number_T);
+
+   X : Number_T;
+   --  brobecker/2007-09-06: At the time when this issue (G904-017) was
+   --  reported, the problem only reproduced if the variable was declared
+   --  inside a function (in other words, stored on stack).  Although
+   --  the issue probably still existed when I tried moving this variable
+   --  to a package spec, the symptoms inside GDB disappeared.
+begin
+   X := (Exists => True, Value => 10);
+   if X.Exists then -- STOP
+      X.Value := X.Value + 1;
+   end if;
+end Comp_Bug;
index 08025bddf2db990479d01471195bb7701f66257d..d33077021236f92b611ae86e6469b6fb67254d80 100644 (file)
-# Copyright 2009, 2011-2012 Free Software Foundation, Inc.\r
-\r
-# This program is free software; you can redistribute it and/or modify\r
-# it under the terms of the GNU General Public License as published by\r
-# the Free Software Foundation; either version 3 of the License, or\r
-# (at your option) any later version.\r
-#\r
-# This program is distributed in the hope that it will be useful,\r
-# but WITHOUT ANY WARRANTY; without even the implied warranty of\r
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
-# GNU General Public License for more details.\r
-#\r
-# You should have received a copy of the GNU General Public License\r
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.\r
-\r
-# Test Machine interface (MI) operations\r
-# Verify that, using the MI, we can run a simple program in both forward\r
-# and reverse directions with the following execution commands:\r
-# - exec-continue\r
-# - exec-finish\r
-# - exec-next\r
-# - exec-step\r
-# - exec-next-instruction\r
-# - exec-step-instruction\r
-\r
-# The goal is not to test gdb functionality, which is done by other tests,\r
-# but to verify the correct output response to MI operations.\r
-#\r
-\r
-if ![target_info exists gdb,can_reverse] {\r
-    return\r
-}\r
-\r
-load_lib mi-support.exp\r
-set MIFLAGS "-i=mi"\r
-\r
-gdb_exit\r
-if [mi_gdb_start] {\r
-    continue\r
-}\r
-\r
-set testfile mi-reverse\r
-set srcfile basics.c\r
-set binfile ${objdir}/${subdir}/mi2-reverse\r
-if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug additional_flags=-DFAKEARGV}] != "" } {\r
-     untested ${testfile}.exp\r
-     return -1\r
-}\r
-\r
-mi_run_to_main\r
-\r
-if [target_info exists gdb,use_precord] {\r
-    # Activate process record/replay\r
-    if [mi_gdb_test "-interpreter-exec console record" \\r
-       {\^done} "Turn on process record"] {\r
-       warning "Fail to activate process record/replay, tests in this group will not be performed.\n";\r
-       return -1\r
-    }\r
-}\r
-\r
-# Locate line numbers in basics.c.\r
-set line_callee4_head  [gdb_get_line_number "callee4 ("]\r
-set line_callee4_body  [expr $line_callee4_head + 2]\r
-set line_callee3_head  [gdb_get_line_number "callee3 ("]\r
-set line_callee3_body  [expr $line_callee3_head + 2]\r
-set line_callee3_close [expr $line_callee3_head + 3]\r
-set line_callee2_head  [gdb_get_line_number "callee2 ("]\r
-set line_callee2_body  [expr $line_callee2_head + 2]\r
-set line_callee2_close [expr $line_callee2_head + 3]\r
-set line_callee1_head  [gdb_get_line_number "callee1 ("]\r
-set line_callee1_body  [expr $line_callee1_head + 2]\r
-set line_callee1_close [expr $line_callee1_head + 3]\r
-set line_callme_head   [gdb_get_line_number "callme"]\r
-set line_callme_body   [expr $line_callme_head + 2]\r
-set line_main_head     [gdb_get_line_number "main ("]\r
-set line_main_body     [expr $line_main_head + 2]\r
-set line_main_hello    [gdb_get_line_number "Hello, World!"]\r
-set line_main_callme_1 [gdb_get_line_number "callme (1"]\r
-\r
-# Forward execute to the callme() function, so that we can\r
-# execute backward from there.\r
-mi_continue_to callme\r
-mi_delete_breakpoints\r
-\r
-proc test_controlled_execution_reverse {} {\r
-    global mi_gdb_prompt\r
-    global srcfile\r
-    global hex\r
-\r
-    global line_callee4_head line_callee4_body\r
-    global line_callee3_head line_callee3_body line_callee3_close\r
-    global line_callee2_head line_callee2_body line_callee2_close\r
-    global line_callee1_head line_callee1_body line_callee1_close\r
-    global line_main_head    line_main_body\r
-    global line_main_hello   line_main_callme_1\r
-\r
-    # Test exec-reverse-finish\r
-\r
-    mi_execute_to "exec-finish --reverse" \\r
-       "end-stepping-range" "main" "" \\r
-       "basics.c" $line_main_callme_1 "" \\r
-       "reverse finish from callme"\r
-\r
-    # Test exec-reverse-next\r
-    #   It takes two steps to get back to the previous line,\r
-    #   as the first step moves us to the start of the current line,\r
-    #   and the one after that moves back to the previous line.\r
-\r
-    mi_execute_to "exec-next --reverse 2" \\r
-       "end-stepping-range" "main" "" \\r
-       "basics.c" $line_main_hello "" \\r
-       "reverse next to get over the call to do_nothing"\r
-\r
-    # Test exec-reverse-step\r
-\r
-    mi_execute_to "exec-step --reverse" \\r
-       "end-stepping-range" "callee1" \\r
-       "\{name=\"intarg\",value=\"2\"\},\{name=\"strarg\",value=\"$hex \\\\\"A string argument\.\\\\\"\"\},\{name=\"fltarg\",value=\"3.5\"\}" \\r
-       "basics.c" $line_callee1_close "" \\r
-       "reverse step to callee1"\r
-\r
-    mi_execute_to "exec-step --reverse" \\r
-       "end-stepping-range" "callee2" \\r
-       "\{name=\"intarg\",value=\"2\"\},\{name=\"strarg\",value=\"$hex \\\\\"A string argument\.\\\\\"\"\}" \\r
-       "basics.c" $line_callee2_close "" \\r
-       "reverse step to callee2"\r
-\r
-    mi_execute_to "exec-step --reverse" \\r
-       "end-stepping-range" "callee3" \\r
-       "\{name=\"strarg\",value=\"$hex \\\\\"A string argument\.\\\\\"\"\}" \\r
-       "basics.c" $line_callee3_close "" \\r
-       "reverse step to callee3"\r
-\r
-    mi_execute_to "exec-step --reverse" \\r
-       "end-stepping-range" "callee4" "" \\r
-       "basics.c" "\[0-9\]+" "" \\r
-       "reverse step to callee4"\r
-\r
-    # Test exec-reverse-[step|next]-instruction\r
-\r
-    mi_execute_to "exec-step-instruction --reverse" \\r
-        "end-stepping-range" "callee4" "" \\r
-        "basics.c" "\[0-9\]+" "" \\r
-        "reverse-step-instruction at callee4"\r
-\r
-    mi_execute_to "exec-next-instruction --reverse" \\r
-        "end-stepping-range" "callee4" "" \\r
-        "basics.c" "\[0-9\]+" "" \\r
-        "reverse-next-instruction at callee4"\r
-\r
-    # Test exec-reverse-continue\r
-\r
-    mi_create_breakpoint "-t basics.c:$line_callee3_head" \\r
-       3 del callee3 ".*basics.c" $line_callee3_head $hex \\r
-       "insert temp breakpoint at basics.c:$line_callee3_head"\r
-\r
-    mi_execute_to "exec-continue --reverse" \\r
-        "breakpoint-hit" "callee3" \\r
-       "\{name=\"strarg\",value=\"$hex \\\\\"A string argument\.\\\\\"\"\}" \\r
-        "basics.c" "\[0-9\]+" \\r
-       { "" "disp=\"del\""} \\r
-        "reverse-continue at callee3"\r
-\r
-    mi_execute_to "exec-continue --reverse" \\r
-        "" "main" "" \\r
-        "basics.c" $line_main_body "" \\r
-        "reverse-continue at main"\r
-}\r
-\r
-test_controlled_execution_reverse\r
-\r
-mi_gdb_exit\r
-return 0\r
+# Copyright 2009, 2011-2012 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+# Test Machine interface (MI) operations
+# Verify that, using the MI, we can run a simple program in both forward
+# and reverse directions with the following execution commands:
+# - exec-continue
+# - exec-finish
+# - exec-next
+# - exec-step
+# - exec-next-instruction
+# - exec-step-instruction
+
+# The goal is not to test gdb functionality, which is done by other tests,
+# but to verify the correct output response to MI operations.
+#
+
+if ![target_info exists gdb,can_reverse] {
+    return
+}
+
+load_lib mi-support.exp
+set MIFLAGS "-i=mi"
+
+gdb_exit
+if [mi_gdb_start] {
+    continue
+}
+
+set testfile mi-reverse
+set srcfile basics.c
+set binfile ${objdir}/${subdir}/mi2-reverse
+if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug additional_flags=-DFAKEARGV}] != "" } {
+     untested ${testfile}.exp
+     return -1
+}
+
+mi_run_to_main
+
+if [target_info exists gdb,use_precord] {
+    # Activate process record/replay
+    if [mi_gdb_test "-interpreter-exec console record" \
+       {\^done} "Turn on process record"] {
+       warning "Fail to activate process record/replay, tests in this group will not be performed.\n";
+       return -1
+    }
+}
+
+# Locate line numbers in basics.c.
+set line_callee4_head  [gdb_get_line_number "callee4 ("]
+set line_callee4_body  [expr $line_callee4_head + 2]
+set line_callee3_head  [gdb_get_line_number "callee3 ("]
+set line_callee3_body  [expr $line_callee3_head + 2]
+set line_callee3_close [expr $line_callee3_head + 3]
+set line_callee2_head  [gdb_get_line_number "callee2 ("]
+set line_callee2_body  [expr $line_callee2_head + 2]
+set line_callee2_close [expr $line_callee2_head + 3]
+set line_callee1_head  [gdb_get_line_number "callee1 ("]
+set line_callee1_body  [expr $line_callee1_head + 2]
+set line_callee1_close [expr $line_callee1_head + 3]
+set line_callme_head   [gdb_get_line_number "callme"]
+set line_callme_body   [expr $line_callme_head + 2]
+set line_main_head     [gdb_get_line_number "main ("]
+set line_main_body     [expr $line_main_head + 2]
+set line_main_hello    [gdb_get_line_number "Hello, World!"]
+set line_main_callme_1 [gdb_get_line_number "callme (1"]
+
+# Forward execute to the callme() function, so that we can
+# execute backward from there.
+mi_continue_to callme
+mi_delete_breakpoints
+
+proc test_controlled_execution_reverse {} {
+    global mi_gdb_prompt
+    global srcfile
+    global hex
+
+    global line_callee4_head line_callee4_body
+    global line_callee3_head line_callee3_body line_callee3_close
+    global line_callee2_head line_callee2_body line_callee2_close
+    global line_callee1_head line_callee1_body line_callee1_close
+    global line_main_head    line_main_body
+    global line_main_hello   line_main_callme_1
+
+    # Test exec-reverse-finish
+
+    mi_execute_to "exec-finish --reverse" \
+       "end-stepping-range" "main" "" \
+       "basics.c" $line_main_callme_1 "" \
+       "reverse finish from callme"
+
+    # Test exec-reverse-next
+    #   It takes two steps to get back to the previous line,
+    #   as the first step moves us to the start of the current line,
+    #   and the one after that moves back to the previous line.
+
+    mi_execute_to "exec-next --reverse 2" \
+       "end-stepping-range" "main" "" \
+       "basics.c" $line_main_hello "" \
+       "reverse next to get over the call to do_nothing"
+
+    # Test exec-reverse-step
+
+    mi_execute_to "exec-step --reverse" \
+       "end-stepping-range" "callee1" \
+       "\{name=\"intarg\",value=\"2\"\},\{name=\"strarg\",value=\"$hex \\\\\"A string argument\.\\\\\"\"\},\{name=\"fltarg\",value=\"3.5\"\}" \
+       "basics.c" $line_callee1_close "" \
+       "reverse step to callee1"
+
+    mi_execute_to "exec-step --reverse" \
+       "end-stepping-range" "callee2" \
+       "\{name=\"intarg\",value=\"2\"\},\{name=\"strarg\",value=\"$hex \\\\\"A string argument\.\\\\\"\"\}" \
+       "basics.c" $line_callee2_close "" \
+       "reverse step to callee2"
+
+    mi_execute_to "exec-step --reverse" \
+       "end-stepping-range" "callee3" \
+       "\{name=\"strarg\",value=\"$hex \\\\\"A string argument\.\\\\\"\"\}" \
+       "basics.c" $line_callee3_close "" \
+       "reverse step to callee3"
+
+    mi_execute_to "exec-step --reverse" \
+       "end-stepping-range" "callee4" "" \
+       "basics.c" "\[0-9\]+" "" \
+       "reverse step to callee4"
+
+    # Test exec-reverse-[step|next]-instruction
+
+    mi_execute_to "exec-step-instruction --reverse" \
+        "end-stepping-range" "callee4" "" \
+        "basics.c" "\[0-9\]+" "" \
+        "reverse-step-instruction at callee4"
+
+    mi_execute_to "exec-next-instruction --reverse" \
+        "end-stepping-range" "callee4" "" \
+        "basics.c" "\[0-9\]+" "" \
+        "reverse-next-instruction at callee4"
+
+    # Test exec-reverse-continue
+
+    mi_create_breakpoint "-t basics.c:$line_callee3_head" \
+       3 del callee3 ".*basics.c" $line_callee3_head $hex \
+       "insert temp breakpoint at basics.c:$line_callee3_head"
+
+    mi_execute_to "exec-continue --reverse" \
+        "breakpoint-hit" "callee3" \
+       "\{name=\"strarg\",value=\"$hex \\\\\"A string argument\.\\\\\"\"\}" \
+        "basics.c" "\[0-9\]+" \
+       { "" "disp=\"del\""} \
+        "reverse-continue at callee3"
+
+    mi_execute_to "exec-continue --reverse" \
+        "" "main" "" \
+        "basics.c" $line_main_body "" \
+        "reverse-continue at main"
+}
+
+test_controlled_execution_reverse
+
+mi_gdb_exit
+return 0