diff options
author | Tristan Gingold <tgingold@free.fr> | 2013-12-20 04:48:54 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2013-12-20 04:48:54 +0100 |
commit | 6c3f709174e8e4d5411f851cedb7d84c38d3b04a (patch) | |
tree | bd12c79c71a2ee65899a9ade9919ec2045addef8 /testsuite/vests/vhdl-93/billowitch/compliant/tc988.vhd | |
parent | bd4aff0f670351c0652cf24e9b04361dc0e3a01c (diff) | |
download | ghdl-6c3f709174e8e4d5411f851cedb7d84c38d3b04a.tar.gz ghdl-6c3f709174e8e4d5411f851cedb7d84c38d3b04a.tar.bz2 ghdl-6c3f709174e8e4d5411f851cedb7d84c38d3b04a.zip |
Import vests testsuite
Diffstat (limited to 'testsuite/vests/vhdl-93/billowitch/compliant/tc988.vhd')
-rw-r--r-- | testsuite/vests/vhdl-93/billowitch/compliant/tc988.vhd | 916 |
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; |