diff options
Diffstat (limited to 'src/expr/node.cpp')
-rw-r--r-- | src/expr/node.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/expr/node.cpp b/src/expr/node.cpp index b1614f31b..39bbfbc2e 100644 --- a/src/expr/node.cpp +++ b/src/expr/node.cpp @@ -73,6 +73,10 @@ bool NodeTemplate<ref_count>::isConst() const { Debug("isConst") << "Node::isConst() returning false, it's a VARIABLE" << std::endl; return false; default: + if(expr::TypeChecker::neverIsConst(NodeManager::currentNM(), *this)){ + Debug("isConst") << "Node::isConst() returning false, the kind is never const" << std::endl; + return false; + } if(getAttribute(IsConstComputedAttr())) { bool bval = getAttribute(IsConstAttr()); Debug("isConst") << "Node::isConst() returning cached value " << (bval ? "true" : "false") << " for: " << *this << std::endl; |