diff options
-rw-r--r-- | testsuite/gna/bug0128/test2.vhdl | 34 | ||||
-rw-r--r-- | testsuite/gna/bug0128/test3.vhdl | 35 | ||||
-rwxr-xr-x | testsuite/gna/bug0128/testsuite.sh | 11 |
3 files changed, 80 insertions, 0 deletions
diff --git a/testsuite/gna/bug0128/test2.vhdl b/testsuite/gna/bug0128/test2.vhdl new file mode 100644 index 000000000..928465e9c --- /dev/null +++ b/testsuite/gna/bug0128/test2.vhdl @@ -0,0 +1,34 @@ +use std.textio.all; + +entity test2 is +end entity; + +architecture beh of test2 is + + procedure fun1( + variable x: inout line + ) is + begin + + end procedure; + + procedure fun2( + constant x: in string + ) is + begin + report x severity note; + end procedure; + +begin + + process + variable x :line; + begin + --doing something with x... or leave null.... + fun1(x); + + --How to check if x is null so that i can put an if statement around this? + fun2(x.all); + end process; + +end architecture; diff --git a/testsuite/gna/bug0128/test3.vhdl b/testsuite/gna/bug0128/test3.vhdl new file mode 100644 index 000000000..a7d165dfd --- /dev/null +++ b/testsuite/gna/bug0128/test3.vhdl @@ -0,0 +1,35 @@ +use std.textio.all; + +entity test2 is +end entity; + +architecture beh of test2 is + + procedure fun1( + variable x: inout line + ) is + begin + + end procedure; + + procedure fun2( + variable x: in string + ) is + begin + report x severity note; + end procedure; + +begin + + process + variable x :line; + begin + --doing something with x... or leave null.... + fun1(x); + + --How to check if x is null so that i can put an if statement around this? + fun2(x.all); + + end process; + +end architecture; diff --git a/testsuite/gna/bug0128/testsuite.sh b/testsuite/gna/bug0128/testsuite.sh new file mode 100755 index 000000000..2d8938ecc --- /dev/null +++ b/testsuite/gna/bug0128/testsuite.sh @@ -0,0 +1,11 @@ +#! /bin/sh + +. ../../testenv.sh + +analyze test2.vhdl +elab_simulate_failure test2 2>&1 > test2.out +grep "NULL access" test2.out + +clean + +echo "Test successful" |