OSDN Git Service

Add new tests.
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 16 Aug 2007 13:58:54 +0000 (13:58 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 16 Aug 2007 13:58:54 +0000 (13:58 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127556 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/testsuite/gnat.dg/array3.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/controlled3.ads [new file with mode: 0644]
gcc/testsuite/gnat.dg/controlled4.adb [new file with mode: 0644]
gcc/testsuite/gnat.dg/controlled4.ads [new file with mode: 0644]

diff --git a/gcc/testsuite/gnat.dg/array3.adb b/gcc/testsuite/gnat.dg/array3.adb
new file mode 100644 (file)
index 0000000..7976925
--- /dev/null
@@ -0,0 +1,37 @@
+--  { dg-do run }
+
+with Ada.Containers.Vectors;
+with Ada.Strings.Unbounded;  use Ada.Strings.Unbounded;
+procedure array3 is
+    type Method_Kinds is (Signal, Slot, Method);
+
+    package Unbounded_String_Vectors is
+      new Ada.Containers.Vectors
+           (Positive, Ada.Strings.Unbounded.Unbounded_String);
+
+    Params_Vector : Unbounded_String_Vectors.Vector;
+
+    type Method_Info is record
+       Name        : Ada.Strings.Unbounded.Unbounded_String;
+       Signature   : Ada.Strings.Unbounded.Unbounded_String;
+       Parameters  : Unbounded_String_Vectors.Vector;
+       Kind        : Method_Kinds;
+    end record;
+
+    package Method_Info_Vectors is
+      new Ada.Containers.Vectors (Positive, Method_Info);
+
+    Signals : Method_Info_Vectors.Vector;
+begin
+    
+    Unbounded_String_Vectors.Append
+      (Params_Vector,
+       Ada.Strings.Unbounded.To_Unbounded_String ("AAA"));
+
+    Method_Info_Vectors.Append
+      (Signals,
+       (Name        => To_Unbounded_String (""),
+        Signature   => To_Unbounded_String (""),
+        Parameters  => Params_Vector,
+        Kind        => Signal));
+end;
diff --git a/gcc/testsuite/gnat.dg/controlled3.ads b/gcc/testsuite/gnat.dg/controlled3.ads
new file mode 100644 (file)
index 0000000..4dee28a
--- /dev/null
@@ -0,0 +1,12 @@
+with Ada.Finalization; use Ada.Finalization;
+package controlled3 is
+   type Test is new Controlled with null record;
+   procedure Add_Test (T : access Test'Class);
+   
+   type Test_Case1 is new Test with null record;
+   type Test_Suite is new Test with null record;
+   
+   type Test_Case is new Test_Case1 with record
+      Link_Under_Test : Natural;
+   end record;
+end;
diff --git a/gcc/testsuite/gnat.dg/controlled4.adb b/gcc/testsuite/gnat.dg/controlled4.adb
new file mode 100644 (file)
index 0000000..b823cc9
--- /dev/null
@@ -0,0 +1,9 @@
+--  { dg-do compile }
+
+package body controlled4 is
+   procedure Test_Suite is
+   begin
+      Add_Test
+        (new Test_Case'(Test_Case1 with Link_Under_Test => 300));
+   end Test_Suite;
+end;
diff --git a/gcc/testsuite/gnat.dg/controlled4.ads b/gcc/testsuite/gnat.dg/controlled4.ads
new file mode 100644 (file)
index 0000000..5ea458a
--- /dev/null
@@ -0,0 +1,5 @@
+
+with controlled3; use controlled3;
+package controlled4 is
+   procedure Test_Suite;
+end;