Ryszard Rozak
107f64e53b
Fix segfault when modport variable is unresolved ( #6386 )
2025-09-05 14:27:46 +02:00
Wilson Snyder
bd7f6d3c19
Fix randomize local after parameters applied ( #6371 ).
2025-09-03 20:04:41 -04:00
Wilson Snyder
929d2ad83a
Fix package imports not found after parameters applied ( #6373 ).
2025-09-03 19:45:43 -04:00
Szymon Gizler
8868d459a2
Fix broken support of unassigned virtual interfaces ( #6253 ) ( #6338 )
...
* Fix broken support of unassigned virtual interfaces
Unassigned virtual interface support added by #6245 is broken - PR marks
dead module as alive - we can't do that as once a module is dead it
needs to remain dead because earlier steps (e.g. port resolution) have
already been skipped.
This commit handles unassigned virtual interfaces at the beginning of
first pass of LinkDot (so it is never marked as dead, and no linking
steps are getting skipped).
Fixes #6253 .
* Apply suggestions from code review
Co-authored-by: Wilson Snyder <wsnyder@wsnyder.org>
* Apply 'make format'
* Revert add of redundant iterateChildren() call
* Add original test case
---------
Co-authored-by: Wilson Snyder <wsnyder@wsnyder.org>
Co-authored-by: github action <action@example.com>
2025-08-28 09:03:46 -04:00
Wilson Snyder
ac2859bf24
Internals: Upgrade to clang-format-18 ( #6333 )
2025-08-25 20:47:48 -04:00
Wilson Snyder
703f0d8c5d
Commentary: spelling
2025-08-25 18:47:08 -04:00
Igor Zaworski
b95a974ff1
Support generic interfaces ( #6272 )
2025-08-22 06:44:35 -04:00
Wilson Snyder
047a12cc62
Fix variables hiding package imports ( #6289 ).
2025-08-13 18:05:37 -04:00
Wilson Snyder
60cbbf0ec1
Add error on mismatching prototypes ( #6207 ).
2025-08-11 19:50:47 -04:00
Wilson Snyder
eb80db9397
Clarify extern error message
2025-08-10 08:38:26 -04:00
Wilson Snyder
c005486acf
Support by ignoring delay2 on UDPs
2025-08-05 17:34:42 -04:00
Wilson Snyder
870c398094
Fix incorrect Non-ANSI I/O declaration conflict error ( #6258 ) broke with #bd1ac038
2025-08-05 16:33:28 -04:00
Wilson Snyder
dca504c706
Internals: Use UINFOTREE istead of dumpTree
2025-08-02 13:44:40 -04:00
Szymon Gizler
61f4c97f40
Support unassigned virtual interfaces ( #5265 ) ( #6245 )
2025-08-01 12:39:13 +02:00
Wilson Snyder
bd1ac03828
Add I/O versus data declaration checking.
2025-07-31 18:38:50 -04:00
Wilson Snyder
9d38e63269
Remove error on missing forward declarations of typedef in class ( #6207 ).
2025-07-30 09:14:13 -04:00
Wilson Snyder
f3560837ec
Add error on missing forward declarations ( #6207 ).
2025-07-26 17:11:35 -04:00
Igor Zaworski
98b8d43a4a
Fix parameter-dependent type linking ( #6170 )
2025-07-21 07:30:10 -04:00
Igor Zaworski
8c5ba3a0d7
Fix conflicting function/class name linking error ( #6182 )
2025-07-16 17:25:01 -04:00
Igor Zaworski
4e8a8a0398
Fix param-dependent class typedef linking ( #6171 )
2025-07-10 21:11:09 -04:00
Igor Zaworski
31c279a7b3
Support randomize() on class member selects ( #6161 )
2025-07-10 04:59:05 -04:00
Igor Zaworski
dbfbc657e1
Fix class extends dotted error ( #6162 )
2025-07-09 17:12:11 -04:00
Ryszard Rozak
8b3a6ba542
Support disable dotted references ( #6154 )
2025-07-09 16:59:26 -04:00
Igor Zaworski
5777ab75c7
Fix crash with --dumpi-V3LinkDot without --debug ( #6159 )
2025-07-08 10:28:17 -04:00
Wilson Snyder
6c9cbaef62
Internals: Clean up some constructors. No functional change intended.
2025-07-03 18:59:32 -04:00
Paul Swirhun
e0c3b42262
Fix developer build error on MacOS/Flex2.6.4 ( https://github.com/verilator/verilator/pull/6153 )
2025-07-02 19:56:10 -07:00
Wilson Snyder
75229cc03d
Fix `pre_randomize`/`post_randomize` when no randomize ( #6122 ).
2025-06-26 18:34:20 -04:00
Wilson Snyder
e422c183ff
Fix method calls without parenthesis ( #6127 ).
2025-06-26 18:16:21 -04:00
Wilson Snyder
f9f70383fa
Fix instability in non-data type internal error
2025-06-24 17:29:44 -04:00
Todd Strader
cfbcfd913c
Fix packed array deduction ( #6046 )
2025-05-31 07:55:00 -04:00
Todd Strader
76aced4d40
Fix parameter types of user defined arrays ( #6042 )
2025-05-27 18:35:21 -04:00
Wilson Snyder
46c7b69c64
Internals: UINFO now includes newline itself. No functional change.
2025-05-22 20:29:32 -04:00
Wilson Snyder
6bb16d6c52
Disable symbol from parser: Support redeclaring type as non-type; major parsing change ( #2412 ).
2025-05-18 07:13:37 -04:00
Wilson Snyder
3b632739a8
Internals: Add RequireDType and check for recursive data types, in prep for future parser.
2025-05-17 20:40:03 -04:00
Wilson Snyder
680236b03e
Internals: Redo post-error additional information to be part of error calls.
2025-05-10 16:20:12 -04:00
Wilson Snyder
bc3bf6ab5e
Tests: Add t_param_type_bad3
2025-05-06 21:11:34 -04:00
Wilson Snyder
1a1c6e8797
Change cell messages to instance to match IEEE
2025-05-03 04:00:47 -04:00
Wilson Snyder
f983ce4875
Internals: Defer DTypeRef versus IfaceDTypeRef determination into V3LinkDot, in preparation for future parser
2025-04-27 22:11:28 -04:00
Wilson Snyder
4c4a39a115
Internals: Refactor V3LinkDot dump and comments. No functional change intended.
2025-04-27 16:52:26 -04:00
Wilson Snyder
7c2b1971a4
Support class extends with arguments.
2025-04-08 22:09:40 -04:00
Ryszard Rozak
353a4b7b4a
Fix parameters referencing interface fields ( #1593 ) ( #5910 )
2025-04-02 09:43:12 -04:00
Wilson Snyder
b4ef6ce860
Support `systemc_interface and related inside `class`.
2025-03-28 22:40:21 -04:00
Wilson Snyder
98b89d0f2c
Fix some cppcheck warnings. No functional change intended.
2025-03-27 19:46:59 -04:00
Wilson Snyder
7521c2c644
Standardize some error messages.
2025-03-23 19:51:54 -04:00
Wilson Snyder
c508fd5d24
Internals: Remove single-statement braces. No functional change.
2025-03-19 22:55:11 -04:00
Wilson Snyder
780163b91e
Internals: Avoid extra op#() calls. No functional change intended.
2025-03-16 14:34:19 -04:00
Wilson Snyder
8157f21c3e
Internals: Refactor hasGParam. No functional change intended.
2025-03-09 16:10:38 -04:00
Krzysztof Bieganski
b2093b513a
Fix type_id package scope resolution ( #5826 )
2025-03-06 17:41:27 -05:00
Wilson Snyder
ce211ebceb
Internals: Make some auto more explicit. No functional change.
2025-03-02 17:01:35 -05:00
Kamil Rakoczy
c840ffb0ae
Support nested classes ( #4178 ) ( #5778 )
...
Signed-off-by: Kamil Rakoczy <krakoczy@antmicro.com>
2025-02-17 23:47:41 +11:00
Wilson Snyder
432d5f851d
Internals: Cleanup some misnamed nodep's. No functional change.
2025-01-24 20:52:31 -05:00
Wilson Snyder
78d6ec8114
Fix error message when call task as a function ( #3089 ).
2025-01-04 12:55:15 -05:00
Wilson Snyder
8fbb725f34
Copyright year update.
2025-01-01 08:30:25 -05:00
Wilson Snyder
6aa7123a8c
Internals: Function/variable renames. No functional change.
2024-12-14 12:49:42 -05:00
Wilson Snyder
a23dfdc4ee
Fix backward external constraint error, from recent new support.
...
(Thanks sv-tests!)
2024-12-13 16:54:14 -05:00
Ryszard Rozak
a8e06874bd
Fix `randomize..with` of parameterized classes ( #5676 )
...
Broke in 7a04a5b
2024-12-13 09:32:47 -05:00
Wilson Snyder
a2f327f729
Support `extern constraint`
2024-12-12 08:16:19 -05:00
Ryszard Rozak
9656311521
Fix error on duplicated declaration of gen block ( #5663 )
2024-12-06 07:20:31 -05:00
Todd Strader
b6f292f556
Fix imported array assignment literals ( #5642 ) ( #5648 )
2024-12-02 15:08:47 -05:00
Wilson Snyder
4781a6046a
Update error as misnamed port dtype might be interface
2024-12-02 07:35:44 -05:00
Wilson Snyder
7a04a5b9a8
Internals: Refactor symIterate functions. No functional change intended
2024-11-30 22:55:16 -05:00
Wilson Snyder
2d71d66cf5
Commentary
2024-11-30 22:35:36 -05:00
Wilson Snyder
a51e26e62d
Internals: Some V3LinkCells debug improvements. No functional change.
2024-11-30 20:09:05 -05:00
Wilson Snyder
f631587a20
Internals: Rename classOrPackageSkip as kept confusing with member accessor. No functional change.
2024-11-29 16:57:18 -05:00
Wilson Snyder
d7893a60ca
Internals: In V3LinkDot debug, show node name prefix. No functional change.
2024-11-29 16:09:04 -05:00
Todd Strader
94e545bdca
Fix interface and struct pattern collision ( #5640 ) ( #5639 )
2024-11-27 17:20:21 -05:00
Wilson Snyder
f5ee7aa0ab
Internals: Decouple Bison class/package symbol table parsing from Link symbol table. ( #5629 )
...
Not intended to change non-error cases, but side-effects are likely.
2024-11-24 18:19:19 -05:00
Greg Davill
904be103df
Support parameter names in pattern initialization ( #5593 ) ( #5596 )
2024-11-14 07:25:58 -05:00
Wilson Snyder
8e82440a55
Fix extranous local:: error
2024-11-13 19:15:10 -05:00
Wilson Snyder
46a5f04840
Internals: Link 'std' in LinkFind
2024-11-11 09:44:08 -05:00
Wilson Snyder
15d1751b23
Internals: Defer `class extends` resolution until link
2024-11-10 19:34:00 -05:00
Wilson Snyder
b71d49e55a
Internals: Defer `$unit` package resolution until link
2024-11-10 18:36:12 -05:00
github action
b74a8f133f
Apply 'make format'
2024-11-10 21:54:54 +00:00
Wilson Snyder
873048c21c
Fix 'local::' parsing in wrong scope
2024-11-10 16:51:34 -05:00
Wilson Snyder
75e9986d39
Fix local:: mis-allowed in `class extends`
2024-11-10 16:43:21 -05:00
Wilson Snyder
4257fcf9d0
Change parsing of cells to be non-symbol table sensitive.
2024-11-10 12:08:37 -05:00
Wilson Snyder
3fae11595a
Support `pure constraint`.
2024-11-09 12:05:26 -05:00
Todd Strader
76fe224e7c
Fix complex user type problem with --x-assign ( #5543 )
2024-10-18 19:52:25 -04:00
Wilson Snyder
fd9f5ab34e
Fix not reporting class reference with extra parameters ( #5467 ).
2024-10-04 05:38:36 -04:00
Wilson Snyder
d06f986b51
Add elaboration dot-error message context, plus debug improvements
2024-10-04 05:38:05 -04:00
Wilson Snyder
d0ec6092b3
Change package import/export to link post-parsing, prep for later commit.
2024-09-28 20:55:22 -04:00
Wilson Snyder
5c923d6629
Fix to avoid IMPLICIT creation if data type of same name.
2024-09-28 17:58:26 -04:00
Wilson Snyder
1dc6fd3d93
Internals: Move interface error to later phase, prep for later commit. No functional change intended.
2024-09-28 17:37:44 -04:00
Wilson Snyder
2584befa5a
Internals: Show tree traversal in V3LinkDot Resolve debug. No functional change intended.
2024-09-22 10:46:04 -04:00
Wilson Snyder
5f39c69d19
Delay parameter type assignment determination until elaboration
2024-09-21 20:27:41 -04:00
Wilson Snyder
774ec42be4
Internals: Experimental cleanup; avoid :: on package symbol tables
2024-09-20 20:39:49 -04:00
Wilson Snyder
80cba789f4
Internals: Remove V3LinkParse's need of class links. No functional change intended.
2024-09-20 18:26:23 -04:00
Wilson Snyder
fb04765c0e
Fix class reference with pin that is a class reference ( #5454 ).
2024-09-17 17:38:18 -04:00
Wilson Snyder
195a665293
Internals: Fix V3LinkDot debug message print
2024-09-15 21:18:51 -04:00
Arkadiusz Kozdra
ef259f63ca
Fix randomize treated as std::randomize in classes ( #5436 )
2024-09-10 09:10:36 -04:00
Arkadiusz Kozdra
409efa1249
Internals: Factor out creating clocking event. No functional change.
...
Signed-off-by: Arkadiusz Kozdra <akozdra@antmicro.com>
2024-09-04 07:57:51 -04:00
Arkadiusz Kozdra
ed7040adc0
Fix dot fallback finding wrong symbols ( #5394 )
2024-08-22 15:49:08 -04:00
Krzysztof Bieganski
930f35acc9
Support `constraint_mode` ( #5338 )
2024-08-21 06:16:44 -04:00
Bartłomiej Chmiel
a730daabef
Support 'parameter type' in hierarchical blocks ( #5309 ) ( #5333 )
2024-08-21 05:30:59 -04:00
Krzysztof Bieganski
6cb0a41857
Support inline random variable control ( #5317 )
...
Signed-off-by: Krzysztof Bieganski <kbieganski@antmicro.com>
2024-08-13 14:20:31 -04:00
Arkadiusz Kozdra
367249ec84
Add parsing but otherwise ignore std::randomize ( #5354 )
2024-08-09 17:21:32 -04:00
Krzysztof Boroński
45ee949cc4
Internals: Disambiguate variable references under `with` clauses of `randomize()` methods ( #5277 )
2024-08-02 11:45:17 -04:00
Krzysztof Bieganski
2f5c58b345
Support `rand_mode` ( #5273 )
...
Signed-off-by: Krzysztof Bieganski <kbieganski@antmicro.com>
2024-07-31 22:30:48 +01:00
Arkadiusz Kozdra
1600cc01a4
Internals: clean up begin blocks and lifetimes in foreach loops ( #5306 )
...
According to IEEE 1800-2023 12.7.3, the loop creates an implicit block
around it, containing declarations of the loop variables with automatic
lifetime.
No functional change intended.
Signed-off-by: Arkadiusz Kozdra <akozdra@antmicro.com>
2024-07-26 05:50:29 -04:00
Wilson Snyder
981d3ce782
Add suggestions on misspelled PLI functions.
2024-07-20 07:20:10 -04:00