Support multi-dimensional arrays as inputs/outputs

This commit is contained in:
Wilson Snyder
2010-01-19 13:18:40 -05:00
parent 2e9ade61b2
commit bded8755a1
6 changed files with 111 additions and 11 deletions
+3 -2
View File
@@ -84,8 +84,9 @@ private:
virtual void visit(AstVar* nodep, AstNUser*) {
nodep->iterateChildren(*this);
if (nodep->isIO() && !nodep->dtypeSkipRefp()->castBasicDType()) {
nodep->v3error("Unsupported: Inputs and outputs must be simple data types; no arrays");
if (nodep->isIO() && !(nodep->dtypeSkipRefp()->castBasicDType() ||
nodep->dtypeSkipRefp()->castArrayDType())) {
nodep->v3error("Unsupported: Inputs and outputs must be simple data types");
}
if (m_ftaskp) nodep->funcLocal(true);
if (nodep->isSigModPublic()) {