Internals: Parser cleanup of parameters, first part.

This commit is contained in:
Wilson Snyder
2020-05-25 18:41:47 -04:00
parent 8957f77793
commit 8255f3f9fe
2 changed files with 13 additions and 7 deletions
+4
View File
@@ -173,6 +173,10 @@ private:
virtual void visit(AstVar* nodep) VL_OVERRIDE {
cleanFileline(nodep);
if (nodep->isParam() && !nodep->valuep()
&& nodep->fileline()->language() < V3LangCode::L1800_2009) {
nodep->v3error("Parameter requires default value, or use IEEE 1800-2009 or later.");
}
if (VN_IS(nodep->subDTypep(), ParseTypeDType)) {
// It's a parameter type. Use a different node type for this.
AstNodeDType* dtypep = VN_CAST(nodep->valuep(), NodeDType);