diff options
author | Morgan Deters <mdeters@gmail.com> | 2010-09-21 22:40:50 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2010-09-21 22:40:50 +0000 |
commit | 818d7fc74583965e87c35360c2fed890844efbba (patch) | |
tree | 07d282fbc4f5e1641f4faa82f47bb9e5b1cc25c6 /src/expr/node_manager.h | |
parent | 2b2d9092eea1f50b468e459029dcfdd88e2232da (diff) |
remove assertion in TNode destructor and ensure all TNode methods check rc > 0 (resolves bug #200); on NodeManager/ExprManager side, no more prepareToBeDestroyed() / inDestruction
Diffstat (limited to 'src/expr/node_manager.h')
-rw-r--r-- | src/expr/node_manager.h | 30 |
1 files changed, 0 insertions, 30 deletions
diff --git a/src/expr/node_manager.h b/src/expr/node_manager.h index ab727a627..bf1bed5f0 100644 --- a/src/expr/node_manager.h +++ b/src/expr/node_manager.h @@ -98,19 +98,6 @@ class NodeManager { bool d_inReclaimZombies; /** - * Indicates that the NodeManager is in the process of being destroyed. - * The main purpose of this is to disable certain debugging assertions - * that might be sensitive to the order in which objects get cleaned up - * (e.g., TNode-valued attributes that outlive their associated Node). - * This may be true before or after the actual NodeManager destructor - * is executing, while other associated cleanup procedures run. E.g., - * an object that contains a NodeManager can set - * <code>d_inDestruction</code> by calling - * <code>prepareToBeDestroyed</code>. - */ - bool d_inDestruction; - - /** * The set of zombie nodes. We may want to revisit this design, as * we might like to delete nodes in least-recently-used order. But * we also need to avoid processing a zombie twice. @@ -248,23 +235,6 @@ public: NodeManager(context::Context* ctxt); ~NodeManager(); - /** - * Return true if the destructor has been invoked, or - * <code>prepareToBeDestroyed()</code> has previously been called. - */ - bool inDestruction() const { return d_inDestruction; } - - /** Signals that this expression manager will soon be destroyed. - * Turns off debugging assertions that may not hold as the system - * is being torn down. - * - * NOTE: It is *not* required to call this function before destroying - * the NodeManager. - */ - void prepareToBeDestroyed() { - d_inDestruction = true; - } - /** The node manager in the current context. */ static NodeManager* currentNM() { return s_current; } |