OpenCores
URL https://opencores.org/ocsvn/openrisc_2011-10-31/openrisc_2011-10-31/trunk

Subversion Repositories openrisc_2011-10-31

[/] [openrisc/] [tags/] [gnu-src/] [gcc-4.5.1/] [gcc-4.5.1-or32-1.0rc1/] [gcc/] [testsuite/] [ada/] [acats/] [tests/] [cd/] [cdd2a02.a] - Diff between revs 294 and 338

Only display areas with differences | Details | Blame | View Log

Rev 294 Rev 338
-- CDD2A02.A
-- CDD2A02.A
--
--
--                             Grant of Unlimited Rights
--                             Grant of Unlimited Rights
--
--
--     The Ada Conformity Assessment Authority (ACAA) holds unlimited
--     The Ada Conformity Assessment Authority (ACAA) holds unlimited
--     rights in the software and documentation contained herein. Unlimited
--     rights in the software and documentation contained herein. Unlimited
--     rights are the same as those granted by the U.S. Government for older
--     rights are the same as those granted by the U.S. Government for older
--     parts of the Ada Conformity Assessment Test Suite, and are defined
--     parts of the Ada Conformity Assessment Test Suite, and are defined
--     in DFAR 252.227-7013(a)(19). By making this public release, the ACAA
--     in DFAR 252.227-7013(a)(19). By making this public release, the ACAA
--     intends to confer upon all recipients unlimited rights equal to those
--     intends to confer upon all recipients unlimited rights equal to those
--     held by the ACAA. These rights include rights to use, duplicate,
--     held by the ACAA. These rights include rights to use, duplicate,
--     release or disclose the released technical data and computer software
--     release or disclose the released technical data and computer software
--     in whole or in part, in any manner and for any purpose whatsoever, and
--     in whole or in part, in any manner and for any purpose whatsoever, and
--     to have or permit others to do so.
--     to have or permit others to do so.
--
--
--                                    DISCLAIMER
--                                    DISCLAIMER
--
--
--     ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR
--     ALL MATERIALS OR INFORMATION HEREIN RELEASED, MADE AVAILABLE OR
--     DISCLOSED ARE AS IS.  THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED
--     DISCLOSED ARE AS IS.  THE GOVERNMENT MAKES NO EXPRESS OR IMPLIED
--     WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE
--     WARRANTY AS TO ANY MATTER WHATSOEVER, INCLUDING THE CONDITIONS OF THE
--     SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE
--     SOFTWARE, DOCUMENTATION OR OTHER INFORMATION RELEASED, MADE AVAILABLE
--     OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A
--     OR DISCLOSED, OR THE OWNERSHIP, MERCHANTABILITY, OR FITNESS FOR A
--     PARTICULAR PURPOSE OF SAID MATERIAL.
--     PARTICULAR PURPOSE OF SAID MATERIAL.
--*
--*
--
--
-- OBJECTIVE:
-- OBJECTIVE:
--    Check that the Read, Write, Input, and Output attributes are inherited
--    Check that the Read, Write, Input, and Output attributes are inherited
--    for untagged derived types.  (Defect Report 8652/0040,
--    for untagged derived types.  (Defect Report 8652/0040,
--     as reflected in Technical Corrigendum 1, 13.13.2(8.1/1) and
--     as reflected in Technical Corrigendum 1, 13.13.2(8.1/1) and
--     13.13.2(25/1)).
--     13.13.2(25/1)).
--
--
-- CHANGE HISTORY:
-- CHANGE HISTORY:
--    30 JUL 2001   PHL   Initial version.
--    30 JUL 2001   PHL   Initial version.
--     5 DEC 2001   RLB   Reformatted for ACATS.
--     5 DEC 2001   RLB   Reformatted for ACATS.
--
--
--!
--!
with Ada.Streams;
with Ada.Streams;
use Ada.Streams;
use Ada.Streams;
with FDD2A00;
with FDD2A00;
use FDD2A00;
use FDD2A00;
with Report;
with Report;
use Report;
use Report;
procedure CDD2A02 is
procedure CDD2A02 is
    type Int is range 1 .. 10;
    type Int is range 1 .. 10;
    type Str is array (Int range <>) of Character;
    type Str is array (Int range <>) of Character;
    procedure Read (Stream : access Root_Stream_Type'Class;
    procedure Read (Stream : access Root_Stream_Type'Class;
                    Item : out Int'Base);
                    Item : out Int'Base);
    procedure Write (Stream : access Root_Stream_Type'Class; Item : Int'Base);
    procedure Write (Stream : access Root_Stream_Type'Class; Item : Int'Base);
    function Input (Stream : access Root_Stream_Type'Class) return Int'Base;
    function Input (Stream : access Root_Stream_Type'Class) return Int'Base;
    procedure Output (Stream : access Root_Stream_Type'Class; Item : Int'Base);
    procedure Output (Stream : access Root_Stream_Type'Class; Item : Int'Base);
    for Int'Read use Read;
    for Int'Read use Read;
    for Int'Write use Write;
    for Int'Write use Write;
    for Int'Input use Input;
    for Int'Input use Input;
    for Int'Output use Output;
    for Int'Output use Output;
    type Parent (D1, D2 : Int; B : Boolean) is
    type Parent (D1, D2 : Int; B : Boolean) is
        record
        record
            S : Str (D1 .. D2);
            S : Str (D1 .. D2);
            case B is
            case B is
                when False =>
                when False =>
                    C1 : Integer;
                    C1 : Integer;
                when True =>
                when True =>
                    C2 : Float;
                    C2 : Float;
            end case;
            end case;
        end record;
        end record;
    procedure Read (Stream : access Root_Stream_Type'Class; Item : out Parent);
    procedure Read (Stream : access Root_Stream_Type'Class; Item : out Parent);
    procedure Write (Stream : access Root_Stream_Type'Class; Item : Parent);
    procedure Write (Stream : access Root_Stream_Type'Class; Item : Parent);
    function Input (Stream : access Root_Stream_Type'Class) return Parent;
    function Input (Stream : access Root_Stream_Type'Class) return Parent;
    procedure Output (Stream : access Root_Stream_Type'Class; Item : Parent);
    procedure Output (Stream : access Root_Stream_Type'Class; Item : Parent);
    for Parent'Read use Read;
    for Parent'Read use Read;
    for Parent'Write use Write;
    for Parent'Write use Write;
    for Parent'Input use Input;
    for Parent'Input use Input;
    for Parent'Output use Output;
    for Parent'Output use Output;
    procedure Actual_Read
    procedure Actual_Read
                 (Stream : access Root_Stream_Type'Class; Item : out Int) is
                 (Stream : access Root_Stream_Type'Class; Item : out Int) is
    begin
    begin
        Integer'Read (Stream, Integer (Item));
        Integer'Read (Stream, Integer (Item));
    end Actual_Read;
    end Actual_Read;
    procedure Actual_Write
    procedure Actual_Write
                 (Stream : access Root_Stream_Type'Class; Item : Int) is
                 (Stream : access Root_Stream_Type'Class; Item : Int) is
    begin
    begin
        Integer'Write (Stream, Integer (Item));
        Integer'Write (Stream, Integer (Item));
    end Actual_Write;
    end Actual_Write;
    function Actual_Input (Stream : access Root_Stream_Type'Class) return Int is
    function Actual_Input (Stream : access Root_Stream_Type'Class) return Int is
    begin
    begin
        return Int (Integer'Input (Stream));
        return Int (Integer'Input (Stream));
    end Actual_Input;
    end Actual_Input;
    procedure Actual_Output
    procedure Actual_Output
                 (Stream : access Root_Stream_Type'Class; Item : Int) is
                 (Stream : access Root_Stream_Type'Class; Item : Int) is
    begin
    begin
        Integer'Output (Stream, Integer (Item));
        Integer'Output (Stream, Integer (Item));
    end Actual_Output;
    end Actual_Output;
    procedure Actual_Read
    procedure Actual_Read
                 (Stream : access Root_Stream_Type'Class; Item : out Parent) is
                 (Stream : access Root_Stream_Type'Class; Item : out Parent) is
    begin
    begin
        case Item.B is
        case Item.B is
            when False =>
            when False =>
                Item.C1 := 7;
                Item.C1 := 7;
            when True =>
            when True =>
                Float'Read (Stream, Item.C2);
                Float'Read (Stream, Item.C2);
        end case;
        end case;
        Str'Read (Stream, Item.S);
        Str'Read (Stream, Item.S);
    end Actual_Read;
    end Actual_Read;
    procedure Actual_Write
    procedure Actual_Write
                 (Stream : access Root_Stream_Type'Class; Item : Parent) is
                 (Stream : access Root_Stream_Type'Class; Item : Parent) is
    begin
    begin
        case Item.B is
        case Item.B is
            when False =>
            when False =>
                null; -- Don't write C1
                null; -- Don't write C1
            when True =>
            when True =>
                Float'Write (Stream, Item.C2);
                Float'Write (Stream, Item.C2);
        end case;
        end case;
        Str'Write (Stream, Item.S);
        Str'Write (Stream, Item.S);
    end Actual_Write;
    end Actual_Write;
    function Actual_Input
    function Actual_Input
                (Stream : access Root_Stream_Type'Class) return Parent is
                (Stream : access Root_Stream_Type'Class) return Parent is
        D1, D2 : Int;
        D1, D2 : Int;
        B : Boolean;
        B : Boolean;
    begin
    begin
        Int'Read (Stream, D2);
        Int'Read (Stream, D2);
        Boolean'Read (Stream, B);
        Boolean'Read (Stream, B);
        Int'Read (Stream, D1);
        Int'Read (Stream, D1);
        declare
        declare
            Item : Parent (D1 => D1, D2 => D2, B => B);
            Item : Parent (D1 => D1, D2 => D2, B => B);
        begin
        begin
            Parent'Read (Stream, Item);
            Parent'Read (Stream, Item);
            return Item;
            return Item;
        end;
        end;
    end Actual_Input;
    end Actual_Input;
    procedure Actual_Output
    procedure Actual_Output
                 (Stream : access Root_Stream_Type'Class; Item : Parent) is
                 (Stream : access Root_Stream_Type'Class; Item : Parent) is
    begin
    begin
        Int'Write (Stream, Item.D2);
        Int'Write (Stream, Item.D2);
        Boolean'Write (Stream, Item.B);
        Boolean'Write (Stream, Item.B);
        Int'Write (Stream, Item.D1);
        Int'Write (Stream, Item.D1);
        Parent'Write (Stream, Item);
        Parent'Write (Stream, Item);
    end Actual_Output;
    end Actual_Output;
    package Int_Ops is new Counting_Stream_Ops (T => Int'Base,
    package Int_Ops is new Counting_Stream_Ops (T => Int'Base,
                                                Actual_Write => Actual_Write,
                                                Actual_Write => Actual_Write,
                                                Actual_Input => Actual_Input,
                                                Actual_Input => Actual_Input,
                                                Actual_Read => Actual_Read,
                                                Actual_Read => Actual_Read,
                                                Actual_Output => Actual_Output);
                                                Actual_Output => Actual_Output);
    package Parent_Ops is
    package Parent_Ops is
       new Counting_Stream_Ops (T => Parent,
       new Counting_Stream_Ops (T => Parent,
                                Actual_Write => Actual_Write,
                                Actual_Write => Actual_Write,
                                Actual_Input => Actual_Input,
                                Actual_Input => Actual_Input,
                                Actual_Read => Actual_Read,
                                Actual_Read => Actual_Read,
                                Actual_Output => Actual_Output);
                                Actual_Output => Actual_Output);
    procedure Read (Stream : access Root_Stream_Type'Class; Item : out Int'Base)
    procedure Read (Stream : access Root_Stream_Type'Class; Item : out Int'Base)
       renames Int_Ops.Read;
       renames Int_Ops.Read;
    procedure Write (Stream : access Root_Stream_Type'Class; Item : Int'Base)
    procedure Write (Stream : access Root_Stream_Type'Class; Item : Int'Base)
       renames Int_Ops.Write;
       renames Int_Ops.Write;
    function Input (Stream : access Root_Stream_Type'Class) return Int'Base
    function Input (Stream : access Root_Stream_Type'Class) return Int'Base
       renames Int_Ops.Input;
       renames Int_Ops.Input;
    procedure Output (Stream : access Root_Stream_Type'Class; Item : Int'Base)
    procedure Output (Stream : access Root_Stream_Type'Class; Item : Int'Base)
       renames Int_Ops.Output;
       renames Int_Ops.Output;
    procedure Read (Stream : access Root_Stream_Type'Class; Item : out Parent)
    procedure Read (Stream : access Root_Stream_Type'Class; Item : out Parent)
       renames Parent_Ops.Read;
       renames Parent_Ops.Read;
    procedure Write (Stream : access Root_Stream_Type'Class; Item : Parent)
    procedure Write (Stream : access Root_Stream_Type'Class; Item : Parent)
       renames Parent_Ops.Write;
       renames Parent_Ops.Write;
    function Input (Stream : access Root_Stream_Type'Class) return Parent
    function Input (Stream : access Root_Stream_Type'Class) return Parent
       renames Parent_Ops.Input;
       renames Parent_Ops.Input;
    procedure Output (Stream : access Root_Stream_Type'Class; Item : Parent)
    procedure Output (Stream : access Root_Stream_Type'Class; Item : Parent)
       renames Parent_Ops.Output;
       renames Parent_Ops.Output;
begin
begin
    Test ("CDD2A02", "Check that the Read, Write, Input, and Output " &
    Test ("CDD2A02", "Check that the Read, Write, Input, and Output " &
                     "attributes are inherited for untagged derived types");
                     "attributes are inherited for untagged derived types");
    Test1:
    Test1:
        declare
        declare
            type Derived1 is new Parent;
            type Derived1 is new Parent;
            S : aliased My_Stream (1000);
            S : aliased My_Stream (1000);
            X1 : Derived1 (D1 => Int (Ident_Int (2)),
            X1 : Derived1 (D1 => Int (Ident_Int (2)),
                           D2 => Int (Ident_Int (5)), B => Ident_Bool (True));
                           D2 => Int (Ident_Int (5)), B => Ident_Bool (True));
            Y1 : Derived1 := (D1 => 3,
            Y1 : Derived1 := (D1 => 3,
                              D2 => 6,
                              D2 => 6,
                              B => False,
                              B => False,
                              S => Str (Ident_Str ("3456")),
                              S => Str (Ident_Str ("3456")),
                              C1 => Ident_Int (100));
                              C1 => Ident_Int (100));
            X2 : Derived1 (D1 => Int (Ident_Int (2)),
            X2 : Derived1 (D1 => Int (Ident_Int (2)),
                           D2 => Int (Ident_Int (5)), B => Ident_Bool (True));
                           D2 => Int (Ident_Int (5)), B => Ident_Bool (True));
        begin
        begin
            X1.S := Str (Ident_Str ("bcde"));
            X1.S := Str (Ident_Str ("bcde"));
            X1.C2 := Float (Ident_Int (4));
            X1.C2 := Float (Ident_Int (4));
            Derived1'Write (S'Access, X1);
            Derived1'Write (S'Access, X1);
            if Int_Ops.Get_Counts /=
            if Int_Ops.Get_Counts /=
               (Read => 0, Write => 0, Input => 0, Output => 0) then
               (Read => 0, Write => 0, Input => 0, Output => 0) then
                Failed ("Error writing discriminants - 1");
                Failed ("Error writing discriminants - 1");
            end if;
            end if;
            if Parent_Ops.Get_Counts /=
            if Parent_Ops.Get_Counts /=
               (Read => 0, Write => 1, Input => 0, Output => 0) then
               (Read => 0, Write => 1, Input => 0, Output => 0) then
                Failed ("Didn't call inherited Write - 1");
                Failed ("Didn't call inherited Write - 1");
            end if;
            end if;
            Derived1'Read (S'Access, X2);
            Derived1'Read (S'Access, X2);
            if Int_Ops.Get_Counts /=
            if Int_Ops.Get_Counts /=
               (Read => 0, Write => 0, Input => 0, Output => 0) then
               (Read => 0, Write => 0, Input => 0, Output => 0) then
                Failed ("Error reading discriminants - 1");
                Failed ("Error reading discriminants - 1");
            end if;
            end if;
            if Parent_Ops.Get_Counts /=
            if Parent_Ops.Get_Counts /=
               (Read => 1, Write => 1, Input => 0, Output => 0) then
               (Read => 1, Write => 1, Input => 0, Output => 0) then
                Failed ("Didn't call inherited Read - 1");
                Failed ("Didn't call inherited Read - 1");
            end if;
            end if;
            if X2 /= (D1 => 2,
            if X2 /= (D1 => 2,
                      D2 => 5,
                      D2 => 5,
                      B => True,
                      B => True,
                      S => Str (Ident_Str ("bcde")),
                      S => Str (Ident_Str ("bcde")),
                      C2 => Float (Ident_Int (4))) then
                      C2 => Float (Ident_Int (4))) then
                Failed
                Failed
                   ("Inherited Read and Write are not inverses of each other - 1");
                   ("Inherited Read and Write are not inverses of each other - 1");
            end if;
            end if;
            Derived1'Output (S'Access, Y1);
            Derived1'Output (S'Access, Y1);
            if Int_Ops.Get_Counts /=
            if Int_Ops.Get_Counts /=
               (Read => 0, Write => 2, Input => 0, Output => 0) then
               (Read => 0, Write => 2, Input => 0, Output => 0) then
                Failed ("Error writing discriminants - 2");
                Failed ("Error writing discriminants - 2");
            end if;
            end if;
            if Parent_Ops.Get_Counts /=
            if Parent_Ops.Get_Counts /=
               (Read => 1, Write => 2, Input => 0, Output => 1) then
               (Read => 1, Write => 2, Input => 0, Output => 1) then
                Failed ("Didn't call inherited Output - 2");
                Failed ("Didn't call inherited Output - 2");
            end if;
            end if;
            declare
            declare
                Y2 : Derived1 := Derived1'Input (S'Access);
                Y2 : Derived1 := Derived1'Input (S'Access);
            begin
            begin
                if Int_Ops.Get_Counts /=
                if Int_Ops.Get_Counts /=
                   (Read => 2, Write => 2, Input => 0, Output => 0) then
                   (Read => 2, Write => 2, Input => 0, Output => 0) then
                    Failed ("Error reading discriminants - 2");
                    Failed ("Error reading discriminants - 2");
                end if;
                end if;
                if Parent_Ops.Get_Counts /=
                if Parent_Ops.Get_Counts /=
                   (Read => 2, Write => 2, Input => 1, Output => 1) then
                   (Read => 2, Write => 2, Input => 1, Output => 1) then
                    Failed ("Didn't call inherited Input - 2");
                    Failed ("Didn't call inherited Input - 2");
                end if;
                end if;
                if Y2 /= (D1 => 3,
                if Y2 /= (D1 => 3,
                          D2 => 6,
                          D2 => 6,
                          B => False,
                          B => False,
                          S => Str (Ident_Str ("3456")),
                          S => Str (Ident_Str ("3456")),
                          C1 => Ident_Int (7)) then
                          C1 => Ident_Int (7)) then
                    Failed
                    Failed
                       ("Inherited Input and Output are not inverses of each other - 2");
                       ("Inherited Input and Output are not inverses of each other - 2");
                end if;
                end if;
            end;
            end;
        end Test1;
        end Test1;
    Test2:
    Test2:
        declare
        declare
            type Derived2 (D : Int) is new Parent (D1 => D,
            type Derived2 (D : Int) is new Parent (D1 => D,
                                                   D2 => D,
                                                   D2 => D,
                                                   B => False);
                                                   B => False);
            S : aliased My_Stream (1000);
            S : aliased My_Stream (1000);
            X1 : Derived2 (D => Int (Ident_Int (7)));
            X1 : Derived2 (D => Int (Ident_Int (7)));
            Y1 : Derived2 := (D => 8,
            Y1 : Derived2 := (D => 8,
                              S => Str (Ident_Str ("8")),
                              S => Str (Ident_Str ("8")),
                              C1 => Ident_Int (200));
                              C1 => Ident_Int (200));
            X2 : Derived2 (D => Int (Ident_Int (7)));
            X2 : Derived2 (D => Int (Ident_Int (7)));
        begin
        begin
            X1.S := Str (Ident_Str ("g"));
            X1.S := Str (Ident_Str ("g"));
            X1.C1 := Ident_Int (4);
            X1.C1 := Ident_Int (4);
            Derived2'Write (S'Access, X1);
            Derived2'Write (S'Access, X1);
            if Int_Ops.Get_Counts /=
            if Int_Ops.Get_Counts /=
               (Read => 2, Write => 2, Input => 0, Output => 0) then
               (Read => 2, Write => 2, Input => 0, Output => 0) then
                Failed ("Error writing discriminants - 3");
                Failed ("Error writing discriminants - 3");
            end if;
            end if;
            if Parent_Ops.Get_Counts /=
            if Parent_Ops.Get_Counts /=
               (Read => 2, Write => 3, Input => 1, Output => 1) then
               (Read => 2, Write => 3, Input => 1, Output => 1) then
                Failed ("Didn't call inherited Write - 3");
                Failed ("Didn't call inherited Write - 3");
            end if;
            end if;
            Derived2'Read (S'Access, X2);
            Derived2'Read (S'Access, X2);
            if Int_Ops.Get_Counts /=
            if Int_Ops.Get_Counts /=
               (Read => 2, Write => 2, Input => 0, Output => 0) then
               (Read => 2, Write => 2, Input => 0, Output => 0) then
                Failed ("Error reading discriminants - 3");
                Failed ("Error reading discriminants - 3");
            end if;
            end if;
            if Parent_Ops.Get_Counts /=
            if Parent_Ops.Get_Counts /=
               (Read => 3, Write => 3, Input => 1, Output => 1) then
               (Read => 3, Write => 3, Input => 1, Output => 1) then
                Failed ("Didn't call inherited Read - 3");
                Failed ("Didn't call inherited Read - 3");
            end if;
            end if;
            if X2 /= (D => 7,
            if X2 /= (D => 7,
                      S => Str (Ident_Str ("g")),
                      S => Str (Ident_Str ("g")),
                      C1 => Ident_Int (7)) then
                      C1 => Ident_Int (7)) then
                Failed
                Failed
                   ("Inherited Read and Write are not inverses of each other - 3");
                   ("Inherited Read and Write are not inverses of each other - 3");
            end if;
            end if;
            Derived2'Output (S'Access, Y1);
            Derived2'Output (S'Access, Y1);
            if Int_Ops.Get_Counts /=
            if Int_Ops.Get_Counts /=
               (Read => 2, Write => 4, Input => 0, Output => 0) then
               (Read => 2, Write => 4, Input => 0, Output => 0) then
                Failed ("Error writing discriminants - 4");
                Failed ("Error writing discriminants - 4");
            end if;
            end if;
            if Parent_Ops.Get_Counts /=
            if Parent_Ops.Get_Counts /=
               (Read => 3, Write => 4, Input => 1, Output => 2) then
               (Read => 3, Write => 4, Input => 1, Output => 2) then
                Failed ("Didn't call inherited Output - 4");
                Failed ("Didn't call inherited Output - 4");
            end if;
            end if;
            declare
            declare
                Y2 : Derived2 := Derived2'Input (S'Access);
                Y2 : Derived2 := Derived2'Input (S'Access);
            begin
            begin
                if Int_Ops.Get_Counts /=
                if Int_Ops.Get_Counts /=
                   (Read => 4, Write => 4, Input => 0, Output => 0) then
                   (Read => 4, Write => 4, Input => 0, Output => 0) then
                    Failed ("Error reading discriminants - 4");
                    Failed ("Error reading discriminants - 4");
                end if;
                end if;
                if Parent_Ops.Get_Counts /=
                if Parent_Ops.Get_Counts /=
                   (Read => 4, Write => 4, Input => 2, Output => 2) then
                   (Read => 4, Write => 4, Input => 2, Output => 2) then
                    Failed ("Didn't call inherited Input - 4");
                    Failed ("Didn't call inherited Input - 4");
                end if;
                end if;
                if Y2 /= (D => 8,
                if Y2 /= (D => 8,
                          S => Str (Ident_Str ("8")),
                          S => Str (Ident_Str ("8")),
                          C1 => Ident_Int (7)) then
                          C1 => Ident_Int (7)) then
                    Failed
                    Failed
                       ("Inherited Input and Output are not inverses of each other - 4");
                       ("Inherited Input and Output are not inverses of each other - 4");
                end if;
                end if;
            end;
            end;
        end Test2;
        end Test2;
    Result;
    Result;
end CDD2A02;
end CDD2A02;
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.