mirror of
https://github.com/verilator/verilator.git
synced 2026-10-06 10:03:44 +02:00
Fix isPure to be superset of isOutputter.
This may cause some additional SIDEEFFECT warnings that previously were not shown.
This commit is contained in:
@@ -801,7 +801,6 @@ AstNode* AstNode::cloneTreeIter(bool needPure) {
|
||||
<< this->warnMore()
|
||||
<< "... Suggest use a temporary variable in place of this expression");
|
||||
// this->v3fatalSrc("cloneTreePure debug backtrace"); // Comment in to debug where caused
|
||||
// it
|
||||
}
|
||||
AstNode* const newp = this->clone();
|
||||
if (this->m_op1p) newp->op1p(this->m_op1p->cloneTreeIterList(needPure));
|
||||
|
||||
@@ -2786,7 +2786,7 @@ public:
|
||||
bool isGateOptimizable() const override { return false; }
|
||||
bool isPredictOptimizable() const override { return false; }
|
||||
bool isOutputter() override { return true; }
|
||||
// but isPure() true
|
||||
bool isPure() override { return false; }
|
||||
AstCoverDecl* declp() const { return m_declp; } // Where defined
|
||||
};
|
||||
class AstCoverToggle final : public AstNodeStmt {
|
||||
@@ -3379,7 +3379,7 @@ public:
|
||||
bool isGateOptimizable() const override { return false; }
|
||||
bool isPredictOptimizable() const override { return false; }
|
||||
bool isOutputter() override { return true; }
|
||||
// but isPure() true
|
||||
bool isPure() override { return false; }
|
||||
AstTraceDecl* declp() const { return m_declp; }
|
||||
VTraceType traceType() const { return m_traceType; }
|
||||
uint32_t baseCode() const { return m_baseCode; }
|
||||
|
||||
Reference in New Issue
Block a user