aboutsummaryrefslogtreecommitdiffstats
path: root/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types')
-rw-r--r--testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/date-record.vhdl25
-rw-r--r--testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/integer-record-aggregate-init.vhdl21
-rw-r--r--testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/simple-integer-record.vhdl22
3 files changed, 68 insertions, 0 deletions
diff --git a/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/date-record.vhdl b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/date-record.vhdl
new file mode 100644
index 000000000..ea7b08995
--- /dev/null
+++ b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/date-record.vhdl
@@ -0,0 +1,25 @@
+entity test is
+end test;
+
+
+architecture only of test is
+
+ type month_name IS (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec );
+ type date IS
+ record
+ day : integer range 1 to 31;
+ month : month_name;
+ year : integer range 0 to 4000;
+ end record;
+
+begin -- only
+ p: process
+ constant christmas : date := ( 25, Dec, 0 );
+ begin -- process p
+ assert christmas.day = 25 report "TEST FAILED" severity FAILURE;
+ assert christmas.month = Dec report "TEST FAILED" severity FAILURE;
+ assert christmas.year = 0 report "TEST FAILED" severity FAILURE;
+ report "TEST PASSED" severity NOTE;
+ wait;
+ end process p;
+end only;
diff --git a/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/integer-record-aggregate-init.vhdl b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/integer-record-aggregate-init.vhdl
new file mode 100644
index 000000000..dbd517043
--- /dev/null
+++ b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/integer-record-aggregate-init.vhdl
@@ -0,0 +1,21 @@
+entity test is
+end test;
+
+architecture only of test is
+begin -- only
+p: process
+ type integerRecord is record
+ foo : integer;
+ bar : integer;
+ end record;
+ variable myRecord : integerRecord;
+begin -- process p
+ myRecord := ( 0, 1 );
+
+ assert myRecord.foo = 0 report "TEST FAILED - 0" severity FAILURE;
+ assert myRecord.bar = 1 report "TEST FAILED - 1" severity FAILURE;
+ report "TEST PASSED" severity NOTE;
+
+ wait;
+end process p;
+end only;
diff --git a/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/simple-integer-record.vhdl b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/simple-integer-record.vhdl
new file mode 100644
index 000000000..b040eb853
--- /dev/null
+++ b/testsuite/vests/vhdl-93/clifton-labs/compliant/functional/types/record-types/simple-integer-record.vhdl
@@ -0,0 +1,22 @@
+entity test is
+end test;
+
+architecture only of test is
+begin -- only
+p: process
+ type integerRecord is record
+ foo : integer;
+ bar : integer;
+ end record;
+ variable myRecord : integerRecord;
+begin -- process p
+ myRecord.foo := 0;
+ myRecord.bar := 1;
+
+ assert myRecord.foo = 0 report "TEST FAILED" severity FAILURE;
+ assert myRecord.bar = 1 report "TEST FAILED" severity FAILURE;
+ report "TEST PASSED" severity NOTE;
+
+ wait;
+end process p;
+end only;