From d4c662c6a1bfad09a9bef60ae36911d6506ecf41 Mon Sep 17 00:00:00 2001 From: Lars-Peter Clausen Date: Sun, 18 Sep 2022 14:31:03 +0200 Subject: [PATCH] Add regression tests for returning class objects from functions Check that returning class objects from functions is supported. Signed-off-by: Lars-Peter Clausen --- ivtest/ivltests/sv_class_return.v | 29 +++++++++++++++++++++++++++++ ivtest/regress-sv.list | 1 + 2 files changed, 30 insertions(+) create mode 100644 ivtest/ivltests/sv_class_return.v diff --git a/ivtest/ivltests/sv_class_return.v b/ivtest/ivltests/sv_class_return.v new file mode 100644 index 000000000..e032cbf7c --- /dev/null +++ b/ivtest/ivltests/sv_class_return.v @@ -0,0 +1,29 @@ +// Check that functions returning a class object are supported + +module test; + + class C; + int i; + task t; + if (i == 10) begin + $display("PASSED"); + end else begin + $display("FAILED"); + end + endtask + endclass + + function C f; + C c; + c = new; + c.i = 10; + return c; + endfunction + + initial begin + C c; + c = f(); + c.t; + end + +endmodule diff --git a/ivtest/regress-sv.list b/ivtest/regress-sv.list index acc997669..5a706cf1d 100644 --- a/ivtest/regress-sv.list +++ b/ivtest/regress-sv.list @@ -532,6 +532,7 @@ sv_class_property_signed1 normal,-g2009 ivltests sv_class_property_signed2 normal,-g2009 ivltests sv_class_property_signed3 normal,-g2009 ivltests sv_class_property_signed4 normal,-g2009 ivltests +sv_class_return normal,-g2009 ivltests sv_class_static_prop1 normal,-g2009 ivltests sv_class_static_prop2 normal,-g2009 ivltests sv_class_static_prop3 normal,-g2009 ivltests