summaryrefslogtreecommitdiff
path: root/src/expr/node_manager.cpp
diff options
context:
space:
mode:
authorKshitij Bansal <kshitij@cs.nyu.edu>2014-04-28 18:18:07 -0400
committerKshitij Bansal <kshitij@cs.nyu.edu>2014-04-28 18:18:07 -0400
commit004678b6386e66cfa6a079215a3644efca59cdf7 (patch)
treeaf7e8ba930b15ffc2ba901f35704c82abeb81e0e /src/expr/node_manager.cpp
parentc28d0a243dbfd4295f785a017890251bd2670ce8 (diff)
nodemanager robust skolem numbering
Diffstat (limited to 'src/expr/node_manager.cpp')
-rw-r--r--src/expr/node_manager.cpp8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/expr/node_manager.cpp b/src/expr/node_manager.cpp
index ecd3df084..4c61550b9 100644
--- a/src/expr/node_manager.cpp
+++ b/src/expr/node_manager.cpp
@@ -89,7 +89,8 @@ NodeManager::NodeManager(context::Context* ctxt,
d_exprManager(exprManager),
d_nodeUnderDeletion(NULL),
d_inReclaimZombies(false),
- d_abstractValueCount(0) {
+ d_abstractValueCount(0),
+ d_skolemCounter(0) {
init();
}
@@ -103,7 +104,8 @@ NodeManager::NodeManager(context::Context* ctxt,
d_exprManager(exprManager),
d_nodeUnderDeletion(NULL),
d_inReclaimZombies(false),
- d_abstractValueCount(0) {
+ d_abstractValueCount(0),
+ d_skolemCounter(0) {
init();
}
@@ -310,7 +312,7 @@ Node NodeManager::mkSkolem(const std::string& prefix, const TypeNode& type, cons
setAttribute(n, TypeCheckedAttr(), true);
if((flags & SKOLEM_EXACT_NAME) == 0) {
stringstream name;
- name << prefix << '_' << n.getId();
+ name << prefix << '_' << ++d_skolemCounter;
setAttribute(n, expr::VarNameAttr(), name.str());
} else {
setAttribute(n, expr::VarNameAttr(), prefix);
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback