Fix constant functions with and begin/end

This commit is contained in:
Wilson Snyder
2009-07-21 14:31:16 -04:00
parent 584cfa4d4a
commit 15b3c9797b
7 changed files with 144 additions and 124 deletions
+2 -4
View File
@@ -830,10 +830,8 @@ private:
void replaceWithSimulation(AstNode* nodep) {
SimulateVisitor simvis;
simvis.mainParamCheck(nodep);
if (simvis.optimizable()) { // Run it - may also be unoptimizable due to large for loop
simvis.mainParamEmulate(nodep);
}
// Run it - may be unoptimizable due to large for loop, etc
simvis.mainParamEmulate(nodep);
if (!simvis.optimizable()) {
AstNode* errorp = simvis.whyNotNodep(); if (!errorp) errorp = nodep;
nodep->v3error("Expecting expression to be constant, but can't determine constant for "