aboutsummaryrefslogtreecommitdiffstats
path: root/testsuite/vests/vhdl-93/billowitch/compliant/tc988.vhd
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/vests/vhdl-93/billowitch/compliant/tc988.vhd')
-rw-r--r--testsuite/vests/vhdl-93/billowitch/compliant/tc988.vhd916
1 files changed, 916 insertions, 0 deletions
diff --git a/testsuite/vests/vhdl-93/billowitch/compliant/tc988.vhd b/testsuite/vests/vhdl-93/billowitch/compliant/tc988.vhd
new file mode 100644
index 000000000..bd600d5fd
--- /dev/null
+++ b/testsuite/vests/vhdl-93/billowitch/compliant/tc988.vhd
@@ -0,0 +1,916 @@
+
+-- Copyright (C) 2001 Bill Billowitch.
+
+-- Some of the work to develop this test suite was done with Air Force
+-- support. The Air Force and Bill Billowitch assume no
+-- responsibilities for this software.
+
+-- This file is part of VESTs (Vhdl tESTs).
+
+-- VESTs 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 2 of the License, or (at
+-- your option) any later version.
+
+-- VESTs 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 VESTs; if not, write to the Free Software Foundation,
+-- Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+
+-- ---------------------------------------------------------------------
+--
+-- $Id: tc988.vhd,v 1.2 2001-10-26 16:30:02 paw Exp $
+-- $Revision: 1.2 $
+--
+-- ---------------------------------------------------------------------
+
+package c06s03b00x00p06n01i00988pkg is
+------------------------------------USING ONLY WHITE MATTER---------------------------------
+--------------------------------------------------------------------------------------------
+---ACCESS TYPE FROM STANDARD PACKAGE
+
+ type boolean_ptr is access boolean ; --simple boolean type
+ type bit_ptr is access bit ; --simple bit type
+ type char_ptr is access character; --simple character type
+ type severity_level_ptr is access severity_level; --simple severity type
+ type integer_ptr is access integer; --simple integer type
+ type real_ptr is access real; --simple real type
+ type time_ptr is access time; --simple time type
+ type natural_ptr is access natural; --simple natural type
+ type positive_ptr is access positive; --simple positive type
+ type string_ptr is access string; --simple string type
+ type bit_vector_ptr is access bit_vector; --simple bit_vector type
+
+--------------------------------------------------------------------------------------------
+
+--UNCONSTRAINED ARRAY OF TYPES FROM STANDARD PACKAGE
+--Index type is natural
+ type boolean_vector is array (natural range <>) of boolean;
+ type severity_level_vector is array (natural range <>) of severity_level;
+ type integer_vector is array (natural range <>) of integer;
+ type real_vector is array (natural range <>) of real;
+ type time_vector is array (natural range <>) of time;
+ type natural_vector is array (natural range <>) of natural;
+ type positive_vector is array (natural range <>) of positive;
+
+---------------------------------------------------------------------------------------------
+--CONSTRAINED ARRAY OF TYPES FROM STANDARD PACKAGE
+--Index type is natural
+ subtype boolean_vector_st is boolean_vector(0 to 15);
+ subtype severity_level_vector_st is severity_level_vector(0 to 15);
+ subtype integer_vector_st is integer_vector(0 to 15);
+ subtype real_vector_st is real_vector(0 to 15);
+ subtype time_vector_st is time_vector(0 to 15);
+ subtype natural_vector_st is natural_vector(0 to 15);
+ subtype positive_vector_st is positive_vector(0 to 15);
+
+---------------------------------------------------------------------------------------------
+--CONSTRAINED ARRAY OF TYPES FROM STANDARD PACKAGE
+--Index type is natural
+ type boolean_cons_vector is array (15 downto 0) of boolean;
+ type severity_level_cons_vector is array (15 downto 0) of severity_level;
+ type integer_cons_vector is array (15 downto 0) of integer;
+ type real_cons_vector is array (15 downto 0) of real;
+ type time_cons_vector is array (15 downto 0) of time;
+ type natural_cons_vector is array (15 downto 0) of natural;
+ type positive_cons_vector is array (15 downto 0) of positive;
+
+---------------------------------------------------------------------------------------------
+
+--CONSTRAINED ARRAY OF ARRAY OF TYPES FROM STANDARD PACKAGE
+--Index type is natural
+ type boolean_cons_vectorofvector is array (0 to 15) of boolean_cons_vector;
+ type severity_level_cons_vectorofvector is array (0 to 15) of severity_level_cons_vector;
+ type integer_cons_vectorofvector is array (0 to 15) of integer_cons_vector ;
+ type real_cons_vectorofvector is array (0 to 15) of real_cons_vector;
+ type time_cons_vectorofvector is array (0 to 15) of time_cons_vector;
+ type natural_cons_vectorofvector is array (0 to 15) of natural_cons_vector;
+ type positive_cons_vectorofvector is array (0 to 15) of positive_cons_vector;
+
+---------------------------------------------------------------------------------------------
+
+--UNCONSTRAINED 2-DIMENSIONAL ARRAY OF TYPES FROM STANDARD PACKAGE
+--Index type is natural
+ type s2boolean_vector is array (natural range <>,natural range <>) of boolean;
+ type s2bit_vector is array (natural range<>,natural range <>) of bit;
+ type s2char_vector is array (natural range<>,natural range <>) of character;
+ type s2severity_level_vector is array (natural range <>,natural range <>) of severity_level;
+ type s2integer_vector is array (natural range <>,natural range <>) of integer;
+ type s2real_vector is array (natural range <>,natural range <>) of real;
+ type s2time_vector is array (natural range <>,natural range <>) of time;
+ type s2natural_vector is array (natural range <>,natural range <>) of natural;
+ type s2positive_vector is array (natural range <>,natural range <>) of positive;
+
+----------------------------------------------------------------------------------------------
+
+--CONSTRAINED 2-DIMENSIONAL ARRAY OF TYPES FROM STANDARD PACKAGE
+--Index type is natural
+ type column is range 1 to 64;
+ type row is range 1 to 1024;
+ type s2boolean_cons_vector is array (row,column) of boolean;
+ type s2bit_cons_vector is array (row,column) of bit;
+ type s2char_cons_vector is array (row,column) of character;
+ type s2severity_level_cons_vector is array (row,column) of severity_level;
+ type s2integer_cons_vector is array (row,column) of integer;
+ type s2real_cons_vector is array (row,column) of real;
+ type s2time_cons_vector is array (row,column) of time;
+ type s2natural_cons_vector is array (row,column) of natural;
+ type s2positive_cons_vector is array (row,column) of positive;
+
+-----------------------------------------------------------------------------------------------
+--RECORD WITH FIELDS FROM STANDARD PACKAGE
+
+ type record_std_package is record
+ a: boolean;
+ b: bit;
+ c:character;
+ d:severity_level;
+ e:integer;
+ f:real;
+ g:time;
+ h:natural;
+ i:positive;
+ end record;
+
+
+-----------------------------------------------------------------------------------------------
+--RECORD WITH FIELDS AS UNCONSTRAINT ARRAYS
+
+ type record_array_st is record
+ a:boolean_vector_st;
+ b:severity_level_vector_st;
+ c:integer_vector_st;
+ d:real_vector_st;
+ e:time_vector_st;
+ f:natural_vector_st;
+ g:positive_vector_st;
+ end record;
+
+-----------------------------------------------------------------------------------------------
+
+--RECORD WITH FIELDS AS CONSTRAINT ARRAYS
+
+ type record_cons_array is record
+ a:boolean_cons_vector;
+ b:severity_level_cons_vector;
+ c:integer_cons_vector;
+ d:real_cons_vector;
+ e:time_cons_vector;
+ f:natural_cons_vector;
+ g:positive_cons_vector;
+ end record;
+
+-----------------------------------------------------------------------------------------------
+
+--RECORD WITH FIELDS AS 2-DIMENSIONAL CONSTRAINED ARRAYS
+
+ type record_2cons_array is record
+ a:s2boolean_cons_vector;
+ b:s2bit_cons_vector;
+ c:s2char_cons_vector;
+ d:s2severity_level_cons_vector;
+ e:s2integer_cons_vector;
+ f:s2real_cons_vector;
+ g:s2time_cons_vector;
+ h:s2natural_cons_vector;
+ i:s2positive_cons_vector;
+ end record;
+
+-----------------------------------------------------------------------------------------------
+--RECORD WITH FIELDS AS 2-DIMENSIONAL CONSTRAINED ARRAYS OF ARRAY
+ type record_cons_arrayofarray is record
+ a:boolean_cons_vectorofvector;
+ b:severity_level_cons_vectorofvector;
+ c:integer_cons_vectorofvector;
+ d:real_cons_vectorofvector;
+ e:time_cons_vectorofvector;
+ f:natural_cons_vectorofvector;
+ g:positive_cons_vectorofvector;
+ end record;
+
+-----------------------------------------------------------------------------------------------
+ type record_of_ptr is record
+ a:boolean_ptr ; --simple boolean type
+ b:bit_ptr; --simple bit type
+ c:char_ptr; --simple character type
+ e:severity_level_ptr; --simple severity type
+ f:integer_ptr; --simple integer type
+ g: real_ptr ; --simple real type
+ h:time_ptr; --simple time type
+ i: natural_ptr; --simple natural type
+
+ j:positive_ptr; --simple positive type
+ k: string_ptr; --simple string type
+ l: bit_vector_ptr; --simple bit_vector type
+ end record;
+
+
+-----------------------------------------------------------------------------------------------
+ type record_of_records is record
+ a: record_std_package;
+ c: record_cons_array;
+ e: record_2cons_array;
+ g: record_cons_arrayofarray;
+ h: record_of_ptr;
+ i: record_array_st;
+ end record;
+
+-----------------------------------------------------------------------------------------------
+--ACCESS TYPES FOR ABOVE
+-----------------------------------------------------------------------------------------------
+
+ type boolean_vector_ptr is access boolean_vector;
+ type severity_level_vector_ptr is access severity_level_vector;
+ type integer_vector_ptr is access integer_vector;
+ type real_vector_ptr is access real_vector;
+ type time_vector_ptr is access time_vector;
+ type natural_vector_ptr is access natural_vector;
+ type positive_vector_ptr is access positive_vector;
+-----------------------------------------------------------------------------------------------
+ type boolean_vector_st_ptr is access boolean_vector_st;--(0 to 15);
+ type severity_level_vector_st_ptr is access severity_level_vector_st;--(0 to 15);
+ type integer_vector_st_ptr is access integer_vector_st;--(0 to 15);
+ type real_vector_st_ptr is access real_vector_st;--(0 to 15);
+ type time_vector_st_ptr is access time_vector_st;--(0 to 15);
+ type natural_vector_st_ptr is access natural_vector_st;--(0 to 15);
+ type positive_vector_st_ptr is access positive_vector_st;--(0 to 15);
+-----------------------------------------------------------------------------------------------
+ type boolean_cons_vector_ptr is access boolean_cons_vector;
+ type severity_level_cons_vector_ptr is access severity_level_cons_vector;
+ type integer_cons_vector_ptr is access integer_cons_vector;
+ type real_cons_vector_ptr is access real_cons_vector;
+ type time_cons_vector_ptr is access time_cons_vector;
+ type natural_cons_vector_ptr is access natural_cons_vector;
+ type positive_cons_vector_ptr is access positive_cons_vector;
+-----------------------------------------------------------------------------------------------
+ type boolean_cons_vectorofvector_ptr is access boolean_cons_vectorofvector;
+ type sev_lvl_cons_vecofvec_ptr is access severity_level_cons_vectorofvector;
+ type integer_cons_vectorofvector_ptr is access integer_cons_vectorofvector;
+ type real_cons_vectorofvector_ptr is access real_cons_vectorofvector;
+ type time_cons_vectorofvector_ptr is access time_cons_vectorofvector;
+ type natural_cons_vectorofvector_ptr is access natural_cons_vectorofvector;
+ type posi_cons_vecofvec_ptr is access positive_cons_vectorofvector;
+-----------------------------------------------------------------------------------------------
+ type s2boolean_vector_ptr is access s2boolean_vector;
+ type s2bit_vector_ptr is access s2bit_vector;
+ type s2char_vector_ptr is access s2char_vector;
+ type s2severity_level_vector_ptr is access s2severity_level_vector;
+ type s2integer_vector_ptr is access s2integer_vector;
+ type s2real_vector_ptr is access s2real_vector;
+ type s2time_vector_ptr is access s2time_vector;
+ type s2positive_vector_ptr is access s2positive_vector;
+-----------------------------------------------------------------------------------------------
+ type s2boolean_cons_vector_ptr is access s2boolean_cons_vector;
+ type s2bit_cons_vector_ptr is access s2bit_cons_vector;
+ type s2char_cons_vector_ptr is access s2char_cons_vector;
+ type s2sev_lvl_cons_vec_ptr is access s2severity_level_cons_vector;
+ type s2integer_cons_vector_ptr is access s2integer_cons_vector;
+ type s2real_cons_vector_ptr is access s2real_cons_vector;
+ type s2time_cons_vector_ptr is access s2time_cons_vector;
+ type s2natural_cons_vector_ptr is access s2natural_cons_vector;
+ type s2positive_cons_vector_ptr is access s2positive_cons_vector;
+----------------------------------------------------------------------------------------------
+ type record_std_package_ptr is access record_std_package;
+ type record_cons_array_ptr is access record_cons_array;
+ type record_2cons_array_ptr is access record_2cons_array;
+ type record_cons_arrayofarray_ptr is access record_cons_arrayofarray;
+ type record_of_ptr_ptr is access record_of_ptr;
+ type record_of_records_ptr is access record_of_records;
+ type record_array_st_ptr is access record_array_st;
+
+-----------------------------------------------------------------------------------------------
+-------------------------USING PARTIAL GRAY & PARTIAL WHITE MATTER-----------------------------
+
+
+
+ type four_value is ('Z','0','1','X'); --enumerated type
+ type four_value_map is array(four_value) of boolean;
+ subtype binary is four_value range '0' to '1';
+ type four_value_vector is array (natural range <>) of four_value; --unconstraint array of
+ type byte is array(0 to 7) of bit;
+ subtype word is bit_vector(0 to 15); --constrained array
+ function resolution(i:in four_value_vector) return four_value; --bus resolution
+ subtype four_value_state is resolution four_value; --function type
+ type state_vector is array (natural range <>) of four_value_state; --unconstraint array of
+ constant size :integer := 63;
+ type primary_memory is array(0 to size) of word; --array of an array
+ type primary_memory_module is --record with field
+ record --as an array
+ enable:binary;
+ memory_number:primary_memory;
+ end record;
+ type whole_memory is array(0 to size) of primary_memory_module; --array of a complex record
+ type current is range -2147483647 to +2147483647
+ units
+ nA;
+ uA = 1000 nA;
+ mA = 1000 uA;
+ A = 1000 mA;
+ end units;
+ type resistance is range -2147483647 to +2147483647
+ units
+ uOhm;
+ mOhm = 1000 uOhm;
+ Ohm = 1000 mOhm;
+ KOhm = 1000 Ohm;
+ end units;
+ subtype delay is integer range 1 to 10;
+
+ type four_value_ptr is access four_value;
+ type four_value_map_ptr is access four_value_map;
+ type binary_ptr is access binary;
+ type four_value_vector_ptr is access four_value_vector; --ennumerated type
+ type byte_ptr is access byte;
+ type word_ptr is access word;
+ type four_value_state_ptr is access four_value_state;
+ type state_vector_ptr is access state_vector; --type returned by resolu.
+ type primary_memory_ptr is access primary_memory;
+ type primary_memory_module_ptr is access primary_memory_module;
+ type whole_memory_ptr is access whole_memory;
+ type current_ptr is access current;
+ type resistance_ptr is access resistance;
+ type delay_ptr is access delay;
+-------------------------------------------------------------------------------------------
+ constant C1 : boolean := true;
+ constant C2 : bit := '1';
+ constant C3 : character := 's';
+ constant C4 : severity_level := note;
+ constant C5 : integer := 3;
+ constant C6 : real := 3.0;
+ constant C7 : time := 3 ns;
+ constant C8 : natural := 1;
+ constant C9 : positive := 1;
+ constant C10 : string := "shishir";
+ constant C11 : bit_vector := B"0011";
+ constant C12 : boolean_vector := (true,false);
+ constant C13 : severity_level_vector := (note,error);
+ constant C14 : integer_vector := (1,2,3,4);
+ constant C15 : real_vector := (1.0,2.0,3.0,4.0);
+ constant C16 : time_vector := (1 ns, 2 ns, 3 ns, 4 ns);
+ constant C17 : natural_vector := (1,2,3,4);
+ constant C18 : positive_vector := (1,2,3,4);
+ constant C19 : boolean_cons_vector := (others => C1);
+ constant C20 : severity_level_cons_vector := (others => C4);
+ constant C21 : integer_cons_vector := (others => C5);
+ constant C22 : real_cons_vector := (others => C6);
+ constant C23 : time_cons_vector := (others => C7);
+ constant C24 : natural_cons_vector := (others => C8);
+ constant C25 : positive_cons_vector := (others => C9);
+
+ constant C70 : boolean_vector_st :=(others => C1);
+ constant C71 : severity_level_vector_st:= (others => C4);
+ constant C72 : integer_vector_st:=(others => C5);
+ constant C73 : real_vector_st:=(others => C6);
+ constant C74 : time_vector_st:=(others => C7);
+ constant C75 : natural_vector_st:=(others => C8);
+ constant C76 : positive_vector_st:=(others => C9);
+
+
+ constant C26 : boolean_cons_vectorofvector := (others => (others => C1));
+ constant C27 : severity_level_cons_vectorofvector := (others => (others => C4));
+ constant C28 : integer_cons_vectorofvector := (others => (others => C5));
+ constant C29 : real_cons_vectorofvector := (others => (others => C6));
+ constant C30 : time_cons_vectorofvector := (others => (others => C7));
+ constant C31 : natural_cons_vectorofvector := (others => (others => C8));
+ constant C32 : positive_cons_vectorofvector := (others => (others => C9));
+--constant C33 : s2boolean_vector := ((true,true),(false,false));
+--constant C34 : s2bit_vector := ((B"0011"),(B"1100"));
+--constant C35 : s2char_vector := (('s','h'),('i','s'));
+--constant C36 : s2severity_level_vector := ((note,error),(error,note));
+--constant C37 : s2integer_vector := ((1,2,3,4),(4,3,2,1));
+--constant C38 : s2real_vector := ((1.0,2.0,3.0,4.0),(4.0,3.0,2.0,1.0));
+--constant C39 : s2time_vector := ((1 ns, 2 ns, 3 ns, 4 ns),(1 ns, 2 ns, 3 ns, 4 ns));
+--constant C40 : s2positive_vector := ((1,2,3,4),(4,3,2,1));
+ constant C41 : s2boolean_cons_vector := (others =>(others => C1));
+ constant C42 : s2bit_cons_vector := (others => (others => C2));
+ constant C43 : s2char_cons_vector := (others =>(others => C3));
+ constant C44 : s2severity_level_cons_vector := (others => (others => C4));
+ constant C45 : s2integer_cons_vector := (others => (others => C5));
+ constant C46 : s2real_cons_vector := (others =>(others => C6));
+ constant C47 : s2time_cons_vector := (others =>(others => C7));
+ constant C48 : s2natural_cons_vector := (others =>(others => C8));
+ constant C49 : s2positive_cons_vector := (others => (others => C9));
+ constant C50 : record_std_package := (C1,C2,C3,C4,C5,C6,C7,C8,C9);
+ constant C51 : record_cons_array := (C19,C20,C21,C22,C23,C24,C25);
+ constant C52 : record_2cons_array := (C41,C42,C43,C44,C45,C46,C47,C48,C49);
+ constant C53 : record_cons_arrayofarray := (C26,C27,C28,C29,C30,C31,C32);
+--constant C54 : record_of_ptr := (NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL);
+--constant C54a : record_array_st := (C70,C71,C72,C73,C74,C75,C76);
+--constant C55 : record_of_records := (C50,C51,C52,C53,C54,C54a);
+ constant C56 : four_value := 'Z';
+ constant C57 : four_value_map := (true,true,true,true);
+ constant C58 : binary := '0';
+ constant C59 : four_value_vector := ('1','0','1','0');
+ constant C60 : byte := (others => '0');
+ constant C61 : word := (others =>'0' );
+ constant C62 : four_value_state := 'Z';
+ constant C63 : state_vector := ('Z','Z','Z','Z');
+ constant C64 : primary_memory := (others => C61);
+ constant C65 : primary_memory_module := ('1',C64);
+ constant C66 : whole_memory := (others => C65);
+ constant C67 : current := 1 A;
+ constant C68 : resistance := 1 Ohm;
+ constant C69 : delay := 2;
+
+end c06s03b00x00p06n01i00988pkg;
+
+package body c06s03b00x00p06n01i00988pkg is
+ function resolution(i:in four_value_vector) return four_value is
+ variable temp :four_value := 'Z';
+ begin
+ return temp;
+ end;
+end c06s03b00x00p06n01i00988pkg;
+
+use work.c06s03b00x00p06n01i00988pkg.all;
+
+ENTITY c06s03b00x00p06n01i00988ent IS
+END c06s03b00x00p06n01i00988ent;
+
+ARCHITECTURE c06s03b00x00p06n01i00988arch OF c06s03b00x00p06n01i00988ent IS
+
+BEGIN
+ TESTING: PROCESS
+ variable var1 : boolean_ptr := new boolean;
+ variable var2 : bit_ptr := new bit;
+ variable var3 : char_ptr := new character;
+ variable var4 : severity_level_ptr := new severity_level;
+ variable var5 : integer_ptr := new integer;
+ variable var6 : real_ptr := new real;
+ variable var7 : time_ptr := new time;
+ variable var8 : natural_ptr := new natural;
+ variable var9 : positive_ptr := new positive;
+ variable var10 : string_ptr := new string(1 to 7);
+ variable var11 : bit_vector_ptr := new bit_vector(0 to 3);
+ variable var12 : boolean_vector_ptr := new boolean_vector(0 to 1);
+ variable var13 : severity_level_vector_ptr := new severity_level_vector(0 to 1);
+ variable var14 : integer_vector_ptr := new integer_vector(0 to 3);
+ variable var15 : real_vector_ptr := new real_vector(0 to 3);
+ variable var16 : time_vector_ptr := new time_vector(0 to 3);
+ variable var17 : natural_vector_ptr := new natural_vector(0 to 3);
+ variable var18 : positive_vector_ptr := new positive_vector( 0 to 3);
+ variable var19 : boolean_cons_vector_ptr := new boolean_cons_vector;
+ variable var20 : severity_level_cons_vector_ptr := new severity_level_cons_vector;
+ variable var21 : integer_cons_vector_ptr := new integer_cons_vector;
+ variable var22 : real_cons_vector_ptr := new real_cons_vector;
+ variable var23 : time_cons_vector_ptr := new time_cons_vector;
+ variable var24 : natural_cons_vector_ptr := new natural_cons_vector;
+ variable var25 : positive_cons_vector_ptr := new positive_cons_vector;
+ variable var26 : boolean_cons_vectorofvector_ptr := new boolean_cons_vectorofvector;
+ variable var27 : sev_lvl_cons_vecofvec_ptr := new severity_level_cons_vectorofvector;
+ variable var28 : integer_cons_vectorofvector_ptr := new integer_cons_vectorofvector;
+ variable var29 : real_cons_vectorofvector_ptr := new real_cons_vectorofvector;
+ variable var30 : time_cons_vectorofvector_ptr := new time_cons_vectorofvector;
+ variable var31 : natural_cons_vectorofvector_ptr := new natural_cons_vectorofvector;
+ variable var32 : posi_cons_vecofvec_ptr := new positive_cons_vectorofvector;
+--variable var33 : s2boolean_vector_ptr := new s2boolean_vector;
+--variable var34 : s2bit_vector_ptr := new s2bit_vector;
+--variable var35 : s2char_vector_ptr := new s2char_vector;
+--variable var36 : s2severity_level_vector_ptr := new s2severity_level_vector;
+--variable var37 : s2integer_vector_ptr := new s2integer_vector;
+--variable var38 : s2real_vector_ptr := new s2real_vector;
+--variable var39 : s2time_vector_ptr := new s2time_vector;
+--variable var40 : s2positive_vector_ptr := new s2positive_vector;
+ variable var41 : s2boolean_cons_vector_ptr := new s2boolean_cons_vector;
+ variable var42 : s2bit_cons_vector_ptr := new s2bit_cons_vector;
+ variable var43 : s2char_cons_vector_ptr := new s2char_cons_vector;
+ variable var44 : s2sev_lvl_cons_vec_ptr := new s2severity_level_cons_vector;
+ variable var45 : s2integer_cons_vector_ptr := new s2integer_cons_vector;
+ variable var46 : s2real_cons_vector_ptr := new s2real_cons_vector;
+ variable var47 : s2time_cons_vector_ptr := new s2time_cons_vector;
+ variable var48 : s2natural_cons_vector_ptr := new s2natural_cons_vector;
+ variable var49 : s2positive_cons_vector_ptr := new s2positive_cons_vector;
+ variable var50 : record_std_package_ptr := new record_std_package;
+ variable var51 : record_cons_array_ptr := new record_cons_array;
+ variable var52 : record_2cons_array_ptr := new record_2cons_array;
+ variable var53 : record_cons_arrayofarray_ptr := new record_cons_arrayofarray;
+ variable var54 : record_of_ptr_ptr := new record_of_ptr;
+ variable var55 : record_of_records_ptr := new record_of_records;
+ variable var56 : four_value_ptr := new four_value;
+ variable var57 : four_value_map_ptr := new four_value_map;
+ variable var58 : binary_ptr := new binary;
+ variable var59 : four_value_vector_ptr := new four_value_vector(0 to 3);
+ variable var60 : byte_ptr := new byte;
+ variable var61 : word_ptr := new word;
+ variable var62 : four_value_state_ptr := new four_value_state;
+ variable var63 : state_vector_ptr := new state_vector(0 to 3);
+ variable var64 : primary_memory_ptr := new primary_memory;
+ variable var65 : primary_memory_module_ptr := new primary_memory_module;
+ variable var66 : whole_memory_ptr := new whole_memory;
+ variable var67 : current_ptr := new current;
+ variable var68 : resistance_ptr := new resistance;
+ variable var69 : delay_ptr := new delay;
+ variable var70 : boolean_vector_st_ptr := new boolean_vector_st;
+ variable var71 : severity_level_vector_st_ptr := new severity_level_vector_st;
+ variable var72 : integer_vector_st_ptr := new integer_vector_st;
+ variable var73 : real_vector_st_ptr := new real_vector_st;
+ variable var74 : time_vector_st_ptr := new time_vector_st;
+ variable var75 : natural_vector_st_ptr := new natural_vector_st;
+ variable var76 : positive_vector_st_ptr := new positive_vector_st;
+ variable var54a : record_array_st_ptr := new record_array_st;
+
+ variable vari1 : boolean := C1;
+ variable vari2 : bit := C2;
+ variable vari3 : character := C3;
+ variable vari4 : severity_level := C4;
+ variable vari5 : integer := C5;
+ variable vari6 : real := C6;
+ variable vari7 : time := C7;
+ variable vari8 : natural := C8;
+ variable vari9 : positive := C9;
+ variable vari10 : string(1 to 7) := C10;
+ variable vari11 : bit_vector(0 to 3):= C11;
+ variable vari12 : boolean_vector(0 to 1):= C12;
+ variable vari13 : severity_level_vector(0 to 1) := C13;
+ variable vari14 : integer_vector(0 to 3) := C14;
+ variable vari15 : real_vector(0 to 3):= C15;
+ variable vari16 : time_vector(0 to 3):= C16;
+ variable vari17 : natural_vector(0 to 3):= C17;
+ variable vari18 : positive_vector(0 to 3):= C18;
+ variable vari19 : boolean_cons_vector := C19;
+ variable vari20 : severity_level_cons_vector := C20;
+ variable vari21 : integer_cons_vector := C21;
+ variable vari22 : real_cons_vector := C22;
+ variable vari23 : time_cons_vector := C23;
+ variable vari24 : natural_cons_vector := C24;
+ variable vari25 : positive_cons_vector := C25;
+ variable vari26 : boolean_cons_vectorofvector := C26;
+ variable vari27 : severity_level_cons_vectorofvector := C27;
+ variable vari28 : integer_cons_vectorofvector := C28;
+ variable vari29 : real_cons_vectorofvector := C29;
+ variable vari30 : time_cons_vectorofvector := C30;
+ variable vari31 : natural_cons_vectorofvector := C31;
+ variable vari32 : positive_cons_vectorofvector := C32;
+--variable vari33 : s2boolean_vector := C33;
+--variable vari34 : s2bit_vector := C34;
+--variable vari35 : s2char_vector := C35;
+--variable vari36 : s2severity_level_vector := C36;
+--variable vari37 : s2integer_vector := C37;
+--variable vari38 : s2real_vector := C38;
+--variable vari39 : s2time_vector := C39;
+--variable vari40 : s2positive_vector := C40;
+ variable vari41 : s2boolean_cons_vector := C41;
+ variable vari42 : s2bit_cons_vector := C42;
+ variable vari43 : s2char_cons_vector := C43;
+ variable vari44 : s2severity_level_cons_vector := C44;
+ variable vari45 : s2integer_cons_vector := C45;
+ variable vari46 : s2real_cons_vector := C46;
+ variable vari47 : s2time_cons_vector := C47;
+ variable vari48 : s2natural_cons_vector := C48;
+ variable vari49 : s2positive_cons_vector := C49;
+ variable vari50 : record_std_package := C50;
+ variable vari51 : record_cons_array := C51;
+ variable vari52 : record_2cons_array := C52;
+ variable vari53 : record_cons_arrayofarray := C53;
+--variable vari54 : record_of_ptr := C54;
+--variable vari55 : record_of_records := C55;
+ variable vari56 : four_value := C56;
+ variable vari57 : four_value_map := C57;
+ variable vari58 : binary := C58;
+ variable vari59 : four_value_vector(0 to 3):= C59;
+ variable vari60 : byte := C60;
+ variable vari61 : word := C61;
+ variable vari62 : four_value_state := C62;
+ variable vari63 : state_vector(0 to 3):= C63;
+ variable vari64 : primary_memory := C64;
+ variable vari65 : primary_memory_module := C65;
+ variable vari66 : whole_memory := C66;
+ variable vari67 : current := C67;
+ variable vari68 : resistance := C68;
+ variable vari69 : delay := C69;
+ variable vari70 : boolean_vector_st := C70;
+ variable vari71 : severity_level_vector_st := C71;
+ variable vari72 : integer_vector_st := C72;
+ variable vari73 : real_vector_st := C73;
+ variable vari74 : time_vector_st := C74;
+ variable vari75 : natural_vector_st := C75;
+ variable vari76 : positive_vector_st := C76;
+--variable vari54a : record_array_st := C54a;
+
+ BEGIN
+
+ var1.all := vari1;
+ var2.all := vari2;
+ var3.all := vari3;
+ var4.all := vari4;
+ var5.all := vari5;
+ var6.all := vari6;
+ var7.all := vari7;
+ var8.all := vari8;
+ var9.all := vari9;
+ var10.all := vari10;
+ var11.all := vari11;
+ var12.all := vari12;
+ var13.all := vari13;
+ var14.all := vari14;
+ var15.all := vari15;
+ var16.all := vari16;
+ var17.all := vari17;
+ var18.all := vari18;
+ var19.all := vari19;
+ var20.all := vari20;
+ var21.all := vari21;
+ var22.all := vari22;
+ var23.all := vari23;
+ var24.all := vari24;
+ var25.all := vari25;
+ var26.all := vari26;
+ var27.all := vari27;
+ var28.all := vari28;
+ var29.all := vari29;
+ var30.all := vari30;
+ var31.all := vari31;
+ var32.all := vari32;
+--var33.all := vari33;
+--var34.all := vari34;
+--var35.all := vari35;
+--var36.all := vari36;
+--var37.all := vari37;
+--var38.all := vari38;
+--var39.all := vari39;
+--var40.all := vari40;
+ var41.all := vari41;
+ var42.all := vari42;
+ var43.all := vari43;
+ var44.all := vari44;
+ var45.all := vari45;
+ var46.all := vari46;
+ var47.all := vari47;
+ var48.all := vari48;
+ var49.all := vari49;
+ var50.all := vari50;
+ var51.all := vari51;
+ var52.all := vari52;
+ var53.all := vari53;
+--var54.all := vari54;
+--var55.all := vari55;
+ var56.all := vari56;
+ var57.all := vari57;
+ var58.all := vari58;
+ var59.all := vari59;
+ var60.all := vari60;
+ var61.all := vari61;
+ var62.all := vari62;
+ var63.all := vari63;
+ var64.all := vari64;
+ var65.all := vari65;
+ var66.all := vari66;
+ var67.all := vari67;
+ var68.all := vari68;
+ var69.all := vari69;
+ var70.all := vari70;
+ var71.all := vari71;
+ var72.all := vari72;
+ var73.all := vari73;
+ var74.all := vari74;
+ var75.all := vari75;
+ var76.all := vari76;
+--var54a.all := vari54a;
+
+
+
+
+ ASSERT var1.all = C1 REPORT "Improper Assignment of var1" SEVERITY FAILURE;
+ ASSERT var2.all = C2 REPORT "Improper Assignment of var2" SEVERITY FAILURE;
+ ASSERT var3.all = C3 REPORT "Improper Assignment of var3" SEVERITY FAILURE;
+ ASSERT var4.all = C4 REPORT "Improper Assignment of var4" SEVERITY FAILURE;
+ ASSERT var5.all = C5 REPORT "Improper Assignment of var5" SEVERITY FAILURE;
+ ASSERT var6.all = C6 REPORT "Improper Assignment of var6" SEVERITY FAILURE;
+ ASSERT var7.all = C7 REPORT "Improper Assignment of var7" SEVERITY FAILURE;
+ ASSERT var8.all = C8 REPORT "Improper Assignment of var8" SEVERITY FAILURE;
+ ASSERT var9.all = C9 REPORT "Improper Assignment of var9" SEVERITY FAILURE;
+ ASSERT var10.all = C10 REPORT "Improper Assignment of var10" SEVERITY FAILURE;
+ ASSERT var11.all = C11 REPORT "Improper Assignment of var11" SEVERITY FAILURE;
+ ASSERT var12.all = C12 REPORT "Improper Assignment of var12" SEVERITY FAILURE;
+ ASSERT var13.all = C13 REPORT "Improper Assignment of var13" SEVERITY FAILURE;
+ ASSERT var14.all = C14 REPORT "Improper Assignment of var14" SEVERITY FAILURE;
+ ASSERT var15.all = C15 REPORT "Improper Assignment of var15" SEVERITY FAILURE;
+ ASSERT var16.all = C16 REPORT "Improper Assignment of var16" SEVERITY FAILURE;
+ ASSERT var17.all = C17 REPORT "Improper Assignment of var17" SEVERITY FAILURE;
+ ASSERT var18.all = C18 REPORT "Improper Assignment of var18" SEVERITY FAILURE;
+ ASSERT var19.all = C19 REPORT "Improper Assignment of var19" SEVERITY FAILURE;
+ ASSERT var20.all = C20 REPORT "Improper Assignment of var20" SEVERITY FAILURE;
+ ASSERT var21.all = C21 REPORT "Improper Assignment of var21" SEVERITY FAILURE;
+ ASSERT var22.all = C22 REPORT "Improper Assignment of var22" SEVERITY FAILURE;
+ ASSERT var23.all = C23 REPORT "Improper Assignment of var23" SEVERITY FAILURE;
+ ASSERT var24.all = C24 REPORT "Improper Assignment of var24" SEVERITY FAILURE;
+ ASSERT var25.all = C25 REPORT "Improper Assignment of var25" SEVERITY FAILURE;
+ ASSERT var26.all = C26 REPORT "Improper Assignment of var26" SEVERITY FAILURE;
+ ASSERT var27.all = C27 REPORT "Improper Assignment of var27" SEVERITY FAILURE;
+ ASSERT var28.all = C28 REPORT "Improper Assignment of var28" SEVERITY FAILURE;
+ ASSERT var29.all = C29 REPORT "Improper Assignment of var29" SEVERITY FAILURE;
+ ASSERT var30.all = C30 REPORT "Improper Assignment of var30" SEVERITY FAILURE;
+ ASSERT var31.all = C31 REPORT "Improper Assignment of var31" SEVERITY FAILURE;
+ ASSERT var32.all = C32 REPORT "Improper Assignment of var32" SEVERITY FAILURE;
+--ASSERT var33.all = C33 REPORT "Improper Assignment of var33" SEVERITY FAILURE;
+--ASSERT var34.all = C34 REPORT "Improper Assignment of var34" SEVERITY FAILURE;
+--ASSERT var35.all = C35 REPORT "Improper Assignment of var35" SEVERITY FAILURE;
+--ASSERT var36.all = C36 REPORT "Improper Assignment of var36" SEVERITY FAILURE;
+--ASSERT var37.all = C37 REPORT "Improper Assignment of var37" SEVERITY FAILURE;
+--ASSERT var38.all = C38 REPORT "Improper Assignment of var38" SEVERITY FAILURE;
+--ASSERT var39.all = C39 REPORT "Improper Assignment of var39" SEVERITY FAILURE;
+--ASSERT var40.all = C40 REPORT "Improper Assignment of var40" SEVERITY FAILURE;
+ ASSERT var41.all = C41 REPORT "Improper Assignment of var41" SEVERITY FAILURE;
+ ASSERT var42.all = C42 REPORT "Improper Assignment of var42" SEVERITY FAILURE;
+ ASSERT var43.all = C43 REPORT "Improper Assignment of var43" SEVERITY FAILURE;
+ ASSERT var44.all = C44 REPORT "Improper Assignment of var44" SEVERITY FAILURE;
+ ASSERT var45.all = C45 REPORT "Improper Assignment of var45" SEVERITY FAILURE;
+ ASSERT var46.all = C46 REPORT "Improper Assignment of var46" SEVERITY FAILURE;
+ ASSERT var47.all = C47 REPORT "Improper Assignment of var47" SEVERITY FAILURE;
+ ASSERT var48.all = C48 REPORT "Improper Assignment of var48" SEVERITY FAILURE;
+ ASSERT var49.all = C49 REPORT "Improper Assignment of var49" SEVERITY FAILURE;
+ ASSERT var50.all = C50 REPORT "Improper Assignment of var50" SEVERITY FAILURE;
+ ASSERT var51.all = C51 REPORT "Improper Assignment of var51" SEVERITY FAILURE;
+ ASSERT var52.all = C52 REPORT "Improper Assignment of var52" SEVERITY FAILURE;
+ ASSERT var53.all = C53 REPORT "Improper Assignment of var53" SEVERITY FAILURE;
+--ASSERT var54.all = C54 REPORT "Improper Assignment of var54" SEVERITY FAILURE;
+--ASSERT var54a.all = C54a REPORT "Improper Assignment of var54a" SEVERITY FAILURE;
+--ASSERT var55.all = C55 REPORT "Improper Assignment of var55" SEVERITY FAILURE;
+ ASSERT var56.all = C56 REPORT "Improper Assignment of var56" SEVERITY FAILURE;
+ ASSERT var57.all = C57 REPORT "Improper Assignment of var57" SEVERITY FAILURE;
+ ASSERT var58.all = C58 REPORT "Improper Assignment of var58" SEVERITY FAILURE;
+ ASSERT var59.all = C59 REPORT "Improper Assignment of var59" SEVERITY FAILURE;
+ ASSERT var60.all = C60 REPORT "Improper Assignment of var60" SEVERITY FAILURE;
+ ASSERT var61.all = C61 REPORT "Improper Assignment of var61" SEVERITY FAILURE;
+ ASSERT var62.all = C62 REPORT "Improper Assignment of var62" SEVERITY FAILURE;
+ ASSERT var63.all = C63 REPORT "Improper Assignment of var63" SEVERITY FAILURE;
+ ASSERT var64.all = C64 REPORT "Improper Assignment of var64" SEVERITY FAILURE;
+ ASSERT var65.all = C65 REPORT "Improper Assignment of var65" SEVERITY FAILURE;
+ ASSERT var66.all = C66 REPORT "Improper Assignment of var66" SEVERITY FAILURE;
+ ASSERT var67.all = C67 REPORT "Improper Assignment of var67" SEVERITY FAILURE;
+ ASSERT var68.all = C68 REPORT "Improper Assignment of var68" SEVERITY FAILURE;
+ ASSERT var69.all = C69 REPORT "Improper Assignment of var69" SEVERITY FAILURE;
+ ASSERT var70.all = C70 REPORT "Improper Assignment of var70" SEVERITY FAILURE;
+ ASSERT var71.all = C71 REPORT "Improper Assignment of var71" SEVERITY FAILURE;
+ ASSERT var72.all = C72 REPORT "Improper Assignment of var72" SEVERITY FAILURE;
+ ASSERT var73.all = C73 REPORT "Improper Assignment of var73" SEVERITY FAILURE;
+ ASSERT var74.all = C74 REPORT "Improper Assignment of var74" SEVERITY FAILURE;
+ ASSERT var75.all = C75 REPORT "Improper Assignment of var75" SEVERITY FAILURE;
+ ASSERT var76.all = C76 REPORT "Improper Assignment of var76" SEVERITY FAILURE;
+
+ assert NOT( var1.all = C1 and
+ var2.all = C2 and
+ var3.all = C3 and
+ var4.all = C4 and
+ var5.all = C5 and
+ var6.all = C6 and
+ var7.all = C7 and
+ var8.all = C8 and
+ var9.all = C9 and
+ var10.all = C10 and
+ var11.all = C11 and
+ var12.all = C12 and
+ var13.all = C13 and
+ var14.all = C14 and
+ var15.all = C15 and
+ var16.all = C16 and
+ var17.all = C17 and
+ var18.all = C18 and
+ var19.all = C19 and
+ var20.all = C20 and
+ var21.all = C21 and
+ var22.all = C22 and
+ var23.all = C23 and
+ var24.all = C24 and
+ var25.all = C25 and
+ var26.all = C26 and
+ var27.all = C27 and
+ var28.all = C28 and
+ var29.all = C29 and
+ var30.all = C30 and
+ var31.all = C31 and
+ var32.all = C32 and
+-- var33.all = C33 and
+-- var34.all = C34 and
+-- var35.all = C35 and
+-- var36.all = C36 and
+-- var37.all = C37 and
+-- var38.all = C38 and
+-- var39.all = C39 and
+-- var40.all = C40 and
+ var41.all = C41 and
+ var42.all = C42 and
+ var43.all = C43 and
+ var44.all = C44 and
+ var45.all = C45 and
+ var46.all = C46 and
+ var47.all = C47 and
+ var48.all = C48 and
+ var49.all = C49 and
+ var50.all = C50 and
+ var51.all = C51 and
+ var52.all = C52 and
+ var53.all = C53 and
+-- var54.all = C54 and
+-- var54a.all = C54a and
+-- var55.all = C55 and
+ var56.all = C56 and
+ var57.all = C57 and
+ var58.all = C58 and
+ var59.all = C59 and
+ var60.all = C60 and
+ var61.all = C61 and
+ var62.all = C62 and
+ var63.all = C63 and
+ var64.all = C64 and
+ var65.all = C65 and
+ var66.all = C66 and
+ var67.all = C67 and
+ var68.all = C68 and
+ var69.all = C69 and
+ var70.all = C70 and
+ var71.all = C71 and
+ var72.all = C72 and
+ var73.all = C73 and
+ var74.all = C74 and
+ var75.all = C75 and
+ var76.all = C76 )
+ report "***PASSED TEST: c06s03b00x00p06n01i00988"
+ severity NOTE;
+ assert ( var1.all = C1 and
+ var2.all = C2 and
+ var3.all = C3 and
+ var4.all = C4 and
+ var5.all = C5 and
+ var6.all = C6 and
+ var7.all = C7 and
+ var8.all = C8 and
+ var9.all = C9 and
+ var10.all = C10 and
+ var11.all = C11 and
+ var12.all = C12 and
+ var13.all = C13 and
+ var14.all = C14 and
+ var15.all = C15 and
+ var16.all = C16 and
+ var17.all = C17 and
+ var18.all = C18 and
+ var19.all = C19 and
+ var20.all = C20 and
+ var21.all = C21 and
+ var22.all = C22 and
+ var23.all = C23 and
+ var24.all = C24 and
+ var25.all = C25 and
+ var26.all = C26 and
+ var27.all = C27 and
+ var28.all = C28 and
+ var29.all = C29 and
+ var30.all = C30 and
+ var31.all = C31 and
+ var32.all = C32 and
+-- var33.all = C33 and
+-- var34.all = C34 and
+-- var35.all = C35 and
+-- var36.all = C36 and
+-- var37.all = C37 and
+-- var38.all = C38 and
+-- var39.all = C39 and
+-- var40.all = C40 and
+ var41.all = C41 and
+ var42.all = C42 and
+ var43.all = C43 and
+ var44.all = C44 and
+ var45.all = C45 and
+ var46.all = C46 and
+ var47.all = C47 and
+ var48.all = C48 and
+ var49.all = C49 and
+ var50.all = C50 and
+ var51.all = C51 and
+ var52.all = C52 and
+ var53.all = C53 and
+-- var54.all = C54 and
+-- var54a.all = C54a and
+-- var55.all = C55 and
+ var56.all = C56 and
+ var57.all = C57 and
+ var58.all = C58 and
+ var59.all = C59 and
+ var60.all = C60 and
+ var61.all = C61 and
+ var62.all = C62 and
+ var63.all = C63 and
+ var64.all = C64 and
+ var65.all = C65 and
+ var66.all = C66 and
+ var67.all = C67 and
+ var68.all = C68 and
+ var69.all = C69 and
+ var70.all = C70 and
+ var71.all = C71 and
+ var72.all = C72 and
+ var73.all = C73 and
+ var74.all = C74 and
+ var75.all = C75 and
+ var76.all = C76 )
+ report "***FAILED TEST: c06s03b00x00p06n01i00988 - Prefix of a selected name used to denote an object designated by an access value should be an access type."
+ severity ERROR;
+ wait;
+ END PROCESS TESTING;
+
+END c06s03b00x00p06n01i00988arch;