diff --git a/include/stp/STPManager/STPManager.h b/include/stp/STPManager/STPManager.h index 31ca6ebd..67d71af6 100644 --- a/include/stp/STPManager/STPManager.h +++ b/include/stp/STPManager/STPManager.h @@ -72,6 +72,8 @@ class STPMgr // Table for variable names, let names etc. ASTSymbolSet _symbol_unique_table; + ASTNodeSet _proj_symbol_list; + // Table to uniquefy bvconst ASTBVConstSet _bvconst_unique_table; @@ -391,6 +393,19 @@ class STPMgr return CurrentSymbol; } + bool addProjSymbol(ASTNode& s) + { + _proj_symbol_list.insert(s); + std::cout << "Adding proj symbol: " << s << std::endl; + return true; + } + + bool isProjSymbol(ASTNode& s) + { + return _proj_symbol_list.find(s) != _proj_symbol_list.end(); + } + + bool FoundIntroducedSymbolSet(const ASTNode& in) { if (Introduced_SymbolsSet.find(in) != Introduced_SymbolsSet.end()) diff --git a/lib/Interface/cpp_interface.cpp b/lib/Interface/cpp_interface.cpp index 3ca7a5b6..44113353 100644 --- a/lib/Interface/cpp_interface.cpp +++ b/lib/Interface/cpp_interface.cpp @@ -341,7 +341,7 @@ void Cpp_interface::addSymbol(ASTNode& s) void Cpp_interface::addProjSymbol(ASTNode& s) { - getCurrentSymbols().push_back(s); + bm.addProjSymbol(s); } void Cpp_interface::success()