summaryrefslogtreecommitdiff
path: root/src/parser/parser.cpp
diff options
context:
space:
mode:
authorajreynol <andrew.j.reynolds@gmail.com>2016-11-01 13:20:49 -0500
committerajreynol <andrew.j.reynolds@gmail.com>2016-11-01 13:20:49 -0500
commit8e0fce94790249ff7aff84ff4500bb96e2ebb9e9 (patch)
tree25e65718cff712f13688e452ffc1d4b459cd7367 /src/parser/parser.cpp
parent3506b13f4d298095e8405b32b05e838f17dbe809 (diff)
Working memory leak free version, changes interface to pointers.
Diffstat (limited to 'src/parser/parser.cpp')
-rw-r--r--src/parser/parser.cpp8
1 files changed, 2 insertions, 6 deletions
diff --git a/src/parser/parser.cpp b/src/parser/parser.cpp
index 712494805..e46c13140 100644
--- a/src/parser/parser.cpp
+++ b/src/parser/parser.cpp
@@ -303,12 +303,10 @@ bool Parser::isUnresolvedType(const std::string& name) {
return d_unresolved.find(getSort(name)) != d_unresolved.end();
}
-std::vector<DatatypeType>
-Parser::mkMutualDatatypeTypes(const std::vector<Datatype>& datatypes) {
+void Parser::mkMutualDatatypeTypes(std::vector<Datatype*>& datatypes, std::vector<DatatypeType>& types) {
try {
- std::vector<DatatypeType> types =
- d_exprManager->mkMutualDatatypeTypes(datatypes, d_unresolved);
+ d_exprManager->mkMutualDatatypeTypes(datatypes, d_unresolved, types);
assert(datatypes.size() == types.size());
@@ -373,8 +371,6 @@ Parser::mkMutualDatatypeTypes(const std::vector<Datatype>& datatypes) {
throw ParserException(dt.getName() + " is not well-founded");
}
}
-
- return types;
} catch(IllegalArgumentException& ie) {
throw ParserException(ie.getMessage());
}
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback