aboutsummaryrefslogtreecommitdiffstats
path: root/testsuite/gna/issue807/test.vhdl
diff options
context:
space:
mode:
Diffstat (limited to 'testsuite/gna/issue807/test.vhdl')
-rw-r--r--testsuite/gna/issue807/test.vhdl44
1 files changed, 44 insertions, 0 deletions
diff --git a/testsuite/gna/issue807/test.vhdl b/testsuite/gna/issue807/test.vhdl
new file mode 100644
index 000000000..6061d1c8e
--- /dev/null
+++ b/testsuite/gna/issue807/test.vhdl
@@ -0,0 +1,44 @@
+library ieee;
+use ieee.std_logic_1164.all;
+
+package test_pkg is
+
+ type record_t is record
+ data : std_ulogic_vector;
+ end record;
+
+ procedure test_procedure(
+ variable rec : out record_t);
+
+ function test_function
+ return record_t;
+
+ function get_data
+ return std_ulogic_vector;
+
+end package;
+
+package body test_pkg is
+
+ procedure test_procedure(
+ variable rec : out record_t)
+ is
+ begin
+ rec := test_function;
+ end procedure;
+
+ function test_function
+ return record_t
+ is
+ begin
+ return (data => get_data);
+ end function;
+
+ function get_data
+ return std_ulogic_vector
+ is
+ begin
+ return x"0F";
+ end function;
+
+end package body;