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
Fix scope resolution operator working with module/interface (#4890) #4906
base: master
Are you sure you want to change the base?
Conversation
src/V3ParseImp.cpp
Outdated
@@ -621,6 +621,11 @@ void V3ParseImp::tokenPipelineSym() { | |||
} else { | |||
token = yaID__ETC; | |||
} | |||
} else if (token == yaID__CC) { | |||
if (VN_IS(scp, Module) || VN_IS(scp, Iface)) { | |||
yylval.fl->v3error(scp->typeName() << " cannot be the left operand of a " |
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.
yylval.fl->v3error(scp->typeName() << " cannot be the left operand of a " | |
yylval.fl->v3error(scp->prettyTypeName() << " cannot be the left operand of a " |
There is a problem with the Should I update the expected output for this test? Or do I need to come up with some other solution? Also need to think about what to do with the existing check code: Lines 3631 to 3640 in a951446
Perhaps it should be improved further? On the other side, the new code allows you to throw an error earlier. |
Maybe have the test mis-reference a variable? The intent is to give code coverage to that (older) message - so whatever's needed to make it fire. (Unless it's impossible which I don't think on quick reading.) |
@chykon do you think you'll be able to get back to finishing this pull request? |
I can't for now, but if someone wants to continue working on PR, I don't mind. |
Closes #4890