-
Notifications
You must be signed in to change notification settings - Fork 640
SystemVerilog: implement unsupported features in processDesignElement() #2737
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
hirooih
commented
Nov 28, 2020
- processDesignElement() is divided into processDesignElementL() (for module, interface, and program) and processDesignElementS() (for others).
- tagging imported functions is implemented
- skipping package import declaration is implemented
- implement "interface class" support
- implement coverage_event handling
- units tests are heavily updated
systemverilog-task-function.d: add tests systemverilog-prototype.d: subset of task-functions.d with kinds +Q
Tags "l" and "ifclass" are assigned. test is added and expected.tags is updated.
"with function sample ()" is processed in the main loop. "with" set prototype true for sample() function not to create a context. add tests
Codecov Report
@@ Coverage Diff @@
## master #2737 +/- ##
==========================================
+ Coverage 86.83% 86.89% +0.05%
==========================================
Files 189 190 +1
Lines 40256 40351 +95
==========================================
+ Hits 34958 35063 +105
+ Misses 5298 5288 -10
Continue to review full report at Codecov.
|
{ "var", K_REGISTER, { 1, 0 } }, | ||
{ "void", K_REGISTER, { 1, 0 } } | ||
{ "void", K_REGISTER, { 1, 0 } }, | ||
{ "with", K_WITH, { 1, 0 } } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
(just comment) I recommend adding "," at the end. So we can make diff smaller when you add a new keyword next time.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I know modern languages allow this, but I have been misunderstanding that C did not allowed this.
I've checked the K&R both the 1st and the 2nd edition, Most of examples do not use semicolon after the last item, but syntax rule says;
initializer:
assignment-expression
{ initializer-list }
{ initializer-list , }
initializer-list:
initializer
initializer-list , initializer
Verilog/SystemVerilog does not allow this, it makes difficult scripting...
Thank!!!
For import of System Verilog, it is not hard topic. Adding a field should be enough. I will add it on the TODO this. |