aboutsummaryrefslogtreecommitdiff
path: root/gcc/testsuite/ada/acats/tests/ca/ca11b01.a
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/ada/acats/tests/ca/ca11b01.a')
-rw-r--r--gcc/testsuite/ada/acats/tests/ca/ca11b01.a208
1 files changed, 0 insertions, 208 deletions
diff --git a/gcc/testsuite/ada/acats/tests/ca/ca11b01.a b/gcc/testsuite/ada/acats/tests/ca/ca11b01.a
deleted file mode 100644
index 8d6de02f1b6..00000000000
--- a/gcc/testsuite/ada/acats/tests/ca/ca11b01.a
+++ /dev/null
@@ -1,208 +0,0 @@
--- CA11B01.A
---
--- Grant of Unlimited Rights
---
--- Under contracts F33600-87-D-0337, F33600-84-D-0280, MDA903-79-C-0687,
--- F08630-91-C-0015, and DCA100-97-D-0025, the U.S. Government obtained
--- unlimited rights in the software and documentation contained herein.
--- Unlimited rights are defined in DFAR 252.227-7013(a)(19). By making
--- this public release, the Government intends to confer upon all
--- recipients unlimited rights equal to those held by the Government.
--- These rights include rights to use, duplicate, release or disclose the
--- released technical data and computer software in whole or in part, in
--- any manner and for any purpose whatsoever, and to have or permit others
--- to do so.
---
--- DISCLAIMER
---
--- ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR
--- DISCLOSED ARE AS IS. THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED
--- WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE
--- SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE
--- OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A
--- PARTICULAR PURPOSE OF SAID MATERIAL.
---*
---
--- OBJECTIVE:
--- Check that a type derived in a public child inherits primitive
--- operations from parent.
---
--- TEST DESCRIPTION:
--- Declare a root record type with discriminant in a package
--- specification. Declare a primitive subprogram for the type
--- (foundation code).
---
--- Add a public child to the above package. Derive a new type
--- with constraint to the discriminant record type from the parent
--- package. Declare a new primitive subprogram to write to the child
--- derived type.
---
--- Add a new public child to the above package. This grandchild package
--- derives a new type using the record type from the above package.
--- Declare a new primitive subprogram to write to the grandchild derived
--- type.
---
--- In the main program, "with" the grandchild. Access the inherited
--- operations from grandparent, parent, and grandchild packages.
---
--- TEST FILES:
--- This test depends on the following foundation code:
---
--- FA11B00.A
---
---
--- CHANGE HISTORY:
--- 06 Dec 94 SAIC ACVC 2.0
---
---!
-
--- Child package of FA11B00.
-package FA11B00.CA11B01_0 is -- Application_Two_Widget
--- This public child declares a derived type from its parent. It
--- represents processing of widgets in a window system.
-
- type App2_Widget is new App1_Widget (Maximum_Size => 5000);
- -- Inherits procedure Create_Widget from parent.
-
- -- Primitive operation of type App2_Widget.
- -- To be inherited by its children derivatives.
- procedure App2_Widget_Specific_Oper (The_Widget : in out App2_Widget;
- Loc : in Widget_Location);
-
-end FA11B00.CA11B01_0; -- Application_Two_Widget
-
---=======================================================================--
-
-package body FA11B00.CA11B01_0 is -- Application_Two_Widget
-
- procedure App2_Widget_Specific_Oper
- (The_Widget : in out App2_Widget;
- Loc : in Widget_Location) is
- begin
- The_Widget.Location := Loc;
- end App2_Widget_Specific_Oper;
-
-end FA11B00.CA11B01_0; -- Application_Two_Widget
-
---=======================================================================--
-
--- Grandchild package of FA11B00, child package of FA11B00.CA11B01_0.
-package FA11B00.CA11B01_0.CA11B01_1 is -- Application_Three_Widget
--- This public grandchild declares a derived type from its parent. It
--- represents processing of widgets in a window system.
-
- type App3_Widget is new App2_Widget; -- Derived record of App2_Widget.
-
- -- Inherits (inherited) procedure Create_Widget from Application_One_Widget.
- -- Inherits procedure App2_Widget_Specific_Oper from App2_Widget.
-
- -- Primitive operation of type App3_Widget.
- procedure App3_Widget_Specific_Oper (The_Widget : in out App3_Widget;
- S : in Widget_Size);
-
-end FA11B00.CA11B01_0.CA11B01_1; -- Application_Three_Widget
-
---=======================================================================--
-
-package body FA11B00.CA11B01_0.CA11B01_1 is -- Application_Three_Widget
-
- procedure App3_Widget_Specific_Oper
- (The_Widget : in out App3_Widget;
- S : in Widget_Size) is
- begin
- The_Widget.Size := S;
- end App3_Widget_Specific_Oper;
-
-end FA11B00.CA11B01_0.CA11B01_1; -- Application_Three_Widget
-
---=======================================================================--
-
-with FA11B00.CA11B01_0.CA11B01_1; -- Application_Three_Widget,
- -- implicitly with Application_Two_Widget,
- -- implicitly with Application_Three_Widget.
-with Report;
-
-procedure CA11B01 is
-
- package Application_One_Widget renames FA11B00;
- package Application_Two_Widget renames FA11B00.CA11B01_0;
- package Application_Three_Widget renames FA11B00.CA11B01_0.CA11B01_1;
-
- use Application_One_Widget;
- use Application_Two_Widget;
- use Application_Three_Widget;
-
-begin
-
- Report.Test ("CA11B01", "Check that a type derived in a public " &
- "child inherits primitive operations from parent");
-
- Application_One_Subtest:
- declare
- White_Widget : App1_Widget;
-
- begin
- -- perform an App1_Widget specific operation.
- App1_Widget_Specific_Oper (C => White, L => "Line Editor ",
- The_Widget => White_Widget, I => 10);
-
- If White_Widget.Color /= White or
- White_Widget.Id /= Widget_ID
- (Report.Ident_Int (10)) or
- White_Widget.Label /= "Line Editor " then
- Report.Failed ("Incorrect result for White_Widget");
- end if;
-
- end Application_One_Subtest;
- ---------------------------------------------------------------
- Application_Two_Subtest:
- declare
- Amber_Widget : App2_Widget;
-
- begin
- App1_Widget_Specific_Oper (Amber_Widget, I => 11,
- C => Amber, L => "Alarm_Clock ");
- -- Inherited from Application_One_Widget.
-
- -- perform an App2_Widget specific operation.
- App2_Widget_Specific_Oper (The_Widget => Amber_Widget, Loc => (380,512));
-
- If Amber_Widget.Color /= Amber or
- Amber_Widget.Id /= Widget_ID (Report.Ident_Int (11)) or
- Amber_Widget.Label /= "Alarm_Clock " or
- Amber_Widget.Location /= (380,512) then
- Report.Failed ("Incorrect result for Amber_Widget");
- end if;
-
- end Application_Two_Subtest;
- ---------------------------------------------------------------
- Application_Three_Subtest:
- declare
- Green_Widget : App3_Widget;
-
- begin
- App1_Widget_Specific_Oper (Green_Widget, 100, Green,
- "Screen Editor ");
- -- Inherited (inherited) from Basic_Widget.
-
- -- perform an App2_Widget specific operation.
- App2_Widget_Specific_Oper (Loc => (1024,760),
- The_Widget => Green_Widget);
- -- Inherited from App_1_Widget.
-
- -- perform an App3_Widget specific operation.
- App3_Widget_Specific_Oper (Green_Widget, S => (100,100));
-
- If Green_Widget.Color /= Green or
- Green_Widget.Id /= Widget_ID (Report.Ident_Int (100)) or
- Green_Widget.Label /= "Screen Editor " or
- Green_Widget.Location /= (1024,760) or
- Green_Widget.Size /= (100,100) then
- Report.Failed ("Incorrect result for Green_Widget");
- end if;
-
- end Application_Three_Subtest;
-
- Report.Result;
-
-end CA11B01;