Make sure all types in gdb.ada/homonym testcase are used...
authorJoel Brobecker <brobecker@gnat.com>
Thu, 1 Dec 2011 23:16:44 +0000 (23:16 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Thu, 1 Dec 2011 23:16:44 +0000 (23:16 +0000)
Otherwise, the compiler does not generate any debug info for them.
This fixes 3 FAILs:

    FAIL: gdb.ada/homonym.exp: ptype local_type_subtype at BREAK_1
    FAIL: gdb.ada/homonym.exp: ptype int_type at BREAK_1
    FAIL: gdb.ada/homonym.exp: ptype local_type_subtype at BREAK_2

gdb/testsuite/ChangeLog:

        * gdb.ada/homonym/pck.ads, gdb.ada/homonym/pck.adb: New files.
        * gdb.ada/homonym/homonym.adb: For use of all types defined
        locally inside both Get_Value subprograms.

gdb/testsuite/ChangeLog
gdb/testsuite/gdb.ada/homonym/homonym.adb
gdb/testsuite/gdb.ada/homonym/pck.adb [new file with mode: 0644]
gdb/testsuite/gdb.ada/homonym/pck.ads [new file with mode: 0644]

index 965571dae6df6631ba299ceef9acfb359c8c55f1..341ce06d21196bec11b315681cb664f06fa22bb3 100644 (file)
@@ -1,3 +1,9 @@
+2011-12-01  Joel Brobecker  <brobecker@adacore.com>
+
+       * gdb.ada/homonym/pck.ads, gdb.ada/homonym/pck.adb: New files.
+       * gdb.ada/homonym/homonym.adb: For use of all types defined
+       locally inside both Get_Value subprograms.
+
 2011-12-01  Jan Kratochvil  <jan.kratochvil@redhat.com>
 
        Fix racy FAILs.
index f459728f3a258d434fa3ed21dc723caa1f73fe9b..43ba23f070335a1645ab5b4009b30bfe10788c5b 100644 (file)
@@ -13,6 +13,8 @@
 --  You should have received a copy of the GNU General Public License
 --  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+with Pck; use Pck;
+
 package body Homonym is
 
    type Integer_Range is new Integer range -100 .. 100;
@@ -28,7 +30,11 @@ package body Homonym is
       subtype Local_Type_Subtype is Local_Type;
       subtype Int_Type   is Integer_Range;
       Lcl : Local_Type := 29;
+      Some_Local_Type_Subtype : Local_Type_Subtype := Lcl;
+      I : Int_Type := 1;
    begin
+      Do_Nothing (Some_Local_Type_Subtype'Address);
+      Do_Nothing (I'Address);
       return Lcl;  --  BREAK_1
    end Get_Value;
 
@@ -42,7 +48,11 @@ package body Homonym is
       subtype Local_Type_Subtype is Local_Type;
       subtype Pos_Type is Positive_Range;
       Lcl : Local_Type := 17;
+      Some_Local_Type_Subtype : Local_Type_Subtype := Lcl;
+      P : Pos_Type := 2;
    begin
+      Do_Nothing (Some_Local_Type_Subtype'Address);
+      Do_Nothing (P'Address);
       return Lcl;  --  BREAK_2
    end Get_Value;
 
diff --git a/gdb/testsuite/gdb.ada/homonym/pck.adb b/gdb/testsuite/gdb.ada/homonym/pck.adb
new file mode 100644 (file)
index 0000000..114fe03
--- /dev/null
@@ -0,0 +1,21 @@
+--  Copyright 2011 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/>.
+
+package body Pck is
+   procedure Do_Nothing (A : System.Address) is
+   begin
+      null;
+   end Do_Nothing;
+end Pck;
diff --git a/gdb/testsuite/gdb.ada/homonym/pck.ads b/gdb/testsuite/gdb.ada/homonym/pck.ads
new file mode 100644 (file)
index 0000000..f8a4ed5
--- /dev/null
@@ -0,0 +1,19 @@
+--  Copyright 2011 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/>.
+
+with System;
+package Pck is
+   procedure Do_Nothing (A : System.Address);
+end Pck;