mirror of
https://github.com/verilator/verilator.git
synced 2025-01-01 12:17:35 +00:00
Tests: Interface-to-wire (#5649 test partial)
This commit is contained in:
parent
e44f34dde3
commit
2284ada723
5
test_regress/t/t_iface_wire_bad.out
Normal file
5
test_regress/t/t_iface_wire_bad.out
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
%Error: t/t_iface_wire_bad.v:16:20: Operator ASSIGNW expected non-interface on Assign RHS but 'a__Viftop' is an interface.
|
||||||
|
: ... note: In instance 't'
|
||||||
|
16 | wire wbad = sub.a;
|
||||||
|
| ^
|
||||||
|
%Error: Exiting due to
|
16
test_regress/t/t_iface_wire_bad.py
Executable file
16
test_regress/t/t_iface_wire_bad.py
Executable file
@ -0,0 +1,16 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
# DESCRIPTION: Verilator: Verilog Test driver/expect definition
|
||||||
|
#
|
||||||
|
# Copyright 2024 by Wilson Snyder. This program is free software; you
|
||||||
|
# can redistribute it and/or modify it under the terms of either the GNU
|
||||||
|
# Lesser General Public License Version 3 or the Perl Artistic License
|
||||||
|
# Version 2.0.
|
||||||
|
# SPDX-License-Identifier: LGPL-3.0-only OR Artistic-2.0
|
||||||
|
|
||||||
|
import vltest_bootstrap
|
||||||
|
|
||||||
|
test.scenarios('linter')
|
||||||
|
|
||||||
|
test.lint(fails=True, expect_filename=test.golden_filename)
|
||||||
|
|
||||||
|
test.passes()
|
17
test_regress/t/t_iface_wire_bad.v
Normal file
17
test_regress/t/t_iface_wire_bad.v
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
// DESCRIPTION: Verilator: Verilog Test module
|
||||||
|
//
|
||||||
|
// This file ONLY is placed under the Creative Commons Public Domain, for
|
||||||
|
// any use, without warranty, 2024 by Wilson Snyder.
|
||||||
|
// SPDX-License-Identifier: CC0-1.0
|
||||||
|
|
||||||
|
interface Ifc;
|
||||||
|
endinterface
|
||||||
|
|
||||||
|
module Sub;
|
||||||
|
Ifc a();
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
module t;
|
||||||
|
Sub sub();
|
||||||
|
wire wbad = sub.a;
|
||||||
|
endmodule
|
5
test_regress/t/t_iface_wire_bad_param.out
Normal file
5
test_regress/t/t_iface_wire_bad_param.out
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
%Error: Internal Error: t/t_iface_wire_bad_param.v:16:20: ../V3Broken.cpp:#: Broken link in node (or something without maybePointedTo): 'm_varp && !m_varp->brokeExists()' @ ./V3Ast__gen_impl.h:#
|
||||||
|
: ... note: In instance 't'
|
||||||
|
16 | wire wbad = sub.a;
|
||||||
|
| ^
|
||||||
|
... See the manual at https://verilator.org/verilator_doc.html for more assistance.
|
16
test_regress/t/t_iface_wire_bad_param.py
Executable file
16
test_regress/t/t_iface_wire_bad_param.py
Executable file
@ -0,0 +1,16 @@
|
|||||||
|
#!/usr/bin/env python3
|
||||||
|
# DESCRIPTION: Verilator: Verilog Test driver/expect definition
|
||||||
|
#
|
||||||
|
# Copyright 2024 by Wilson Snyder. This program is free software; you
|
||||||
|
# can redistribute it and/or modify it under the terms of either the GNU
|
||||||
|
# Lesser General Public License Version 3 or the Perl Artistic License
|
||||||
|
# Version 2.0.
|
||||||
|
# SPDX-License-Identifier: LGPL-3.0-only OR Artistic-2.0
|
||||||
|
|
||||||
|
import vltest_bootstrap
|
||||||
|
|
||||||
|
test.scenarios('linter')
|
||||||
|
|
||||||
|
test.lint(fails=True, expect_filename=test.golden_filename)
|
||||||
|
|
||||||
|
test.passes()
|
17
test_regress/t/t_iface_wire_bad_param.v
Normal file
17
test_regress/t/t_iface_wire_bad_param.v
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
// DESCRIPTION: Verilator: Verilog Test module
|
||||||
|
//
|
||||||
|
// This file ONLY is placed under the Creative Commons Public Domain, for
|
||||||
|
// any use, without warranty, 2024 by Wilson Snyder.
|
||||||
|
// SPDX-License-Identifier: CC0-1.0
|
||||||
|
|
||||||
|
interface Ifc;
|
||||||
|
endinterface
|
||||||
|
|
||||||
|
module Sub #(parameter P);
|
||||||
|
Ifc a();
|
||||||
|
endmodule
|
||||||
|
|
||||||
|
module t;
|
||||||
|
Sub #(0) sub();
|
||||||
|
wire wbad = sub.a;
|
||||||
|
endmodule
|
Loading…
Reference in New Issue
Block a user