From 14ddb2dc36dd9dbfc1e6d2ff7d764a5fedf15eed Mon Sep 17 00:00:00 2001 From: charlet Date: Thu, 16 Aug 2007 13:58:54 +0000 Subject: [PATCH] Add new tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127556 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/testsuite/gnat.dg/array3.adb | 37 +++++++++++++++++++++++++++++++++++ gcc/testsuite/gnat.dg/controlled3.ads | 12 ++++++++++++ gcc/testsuite/gnat.dg/controlled4.adb | 9 +++++++++ gcc/testsuite/gnat.dg/controlled4.ads | 5 +++++ 4 files changed, 63 insertions(+) create mode 100644 gcc/testsuite/gnat.dg/array3.adb create mode 100644 gcc/testsuite/gnat.dg/controlled3.ads create mode 100644 gcc/testsuite/gnat.dg/controlled4.adb create mode 100644 gcc/testsuite/gnat.dg/controlled4.ads diff --git a/gcc/testsuite/gnat.dg/array3.adb b/gcc/testsuite/gnat.dg/array3.adb new file mode 100644 index 0000000..7976925 --- /dev/null +++ b/gcc/testsuite/gnat.dg/array3.adb @@ -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 index 0000000..4dee28a --- /dev/null +++ b/gcc/testsuite/gnat.dg/controlled3.ads @@ -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 index 0000000..b823cc9 --- /dev/null +++ b/gcc/testsuite/gnat.dg/controlled4.adb @@ -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 index 0000000..5ea458a --- /dev/null +++ b/gcc/testsuite/gnat.dg/controlled4.ads @@ -0,0 +1,5 @@ + +with controlled3; use controlled3; +package controlled4 is + procedure Test_Suite; +end; -- 2.7.4