summaryrefslogtreecommitdiff
path: root/src/parser/antlr_parser.h
AgeCommit message (Collapse)Author
2010-03-30Merging from branches/antlr3 (r246:354)Christopher L. Conway
2010-03-16* test/unit/Makefile.am, test/unit/expr/attribute_white.h,Morgan Deters
test/unit/expr/node_white.h: add whitebox attribute test (pulled out attribute stuff from node_white) * test/unit/parser/parser_black.h: fix memory leaks uncovered by valgrind * src/theory/interrupted.h: actually make this "lightweight" (not derived from CVC4::Exception), as promised in my last commit * src/theory/uf/theory_uf.h, test/unit/expr/attribute_black.h: match the new-style cleanup function definition * src/expr/attribute.cpp, src/expr/attribute.h: support for attribute deletion, custom cleanup functions, clearer cleanup function definition. * src/expr/node_manager.h, src/expr/node_manager.cpp: reclaim remaining zombies in dtor, rename NodeValueSet ==> "NodeValuePool", and enable freeing of NodeValues * src/expr/type.h, src/expr/type.cpp: reference-counting for types, customized cleanup function for types, also code cleanup * (various): changed "const Type*" to "Type*" (to enable reference-counting etc. Types are still immutable.) * src/util/output.h: add ::isOn()-- which queries whether a Debug/Trace flag is currently on or not. * src/smt/smt_engine.cpp, src/parser/antlr_parser.cpp, src/expr/type.cpp, src/expr/expr_manager.cpp, various others: minor code cleanup
2010-03-10Lexical scoping for let-bound variables (Bug #53)Christopher L. Conway
2010-03-10Adding preliminary let/flet support to SMT parser (Bug #51)Christopher L. Conway
2010-03-09Adding support for sort U in QF_UF.Christopher L. Conway
2010-02-26* test/unit/context/context_black.h: Test CDList<>. In particular,Morgan Deters
test behavior of grow(), which was previously very broken, fixed by Tim earlier this afternoon. * add the notion of a "private header". Private header files (those not intended for distribution) should now #include "cvc4_private.h" (or "cvc4parser_private.h" for the parser code). When not actually building libcvc4 (resp. libcvc4parser), or associated unit tests, a warning is emitted by the preprocessor. This should make it easier to notice (and disentangle early) any unwanted public/private mixing. Currently the warning identifies a couple places where we need to fix things. * added directory infrastructure for arrays and BV theories. * the Theory inheritance hierarchy makes some assumptions about the way inheritance is done. These are checked at runtime when CVC4_ASSERTIONS is on. See src/theory/theory.h's TheoryImpl<> definition for details. * src/theory/booleans/theory_bool.h, src/theory/booleans/theory_def.h, src/theory/arith/theory_arith.h, src/theory/arith/theory_def.h, src/theory/uf/theory_uf.h, src/theory/uf/theory_def.h, src/parser/antlr_parser.h: minor code formatting fixes as per policy. * src/theory/uf/theory_uf.cpp: fix for non-debug builds. * src/util/options.h, src/util/model.h, src/util/result.h, src/expr/type.h: make CVC4_PUBLIC. * src/util/decision_engine.h: no longer CVC4_PUBLIC. * src/expr/expr_manager.cpp: ExprManager::booleanType() and ExprManager::kindType() weren't returning a value ?! Fixed. * src/expr/expr_manager.h, src/expr/node_manager.h: ExprManager no longer depends on NodeManager (public/private interface mixing). ExprManagerScope is an internal implementation detail, and is moved to node_manager.h. * src/expr/node.h: mark gdb debug routines as "used" so that GCC always emits code for them (even though its static analysis shows they're unused).
2010-02-23Minor optimizations to parser (use const string& for ids, keep only one ↵Christopher L. Conway
binding in symtab)
2010-02-22Switching to types-as-attributes in parserChristopher L. Conway
2010-02-18Adding --no-checking option to disable semantic checks in parserChristopher L. Conway
2010-02-16Moving parser error checking into AntlrParserChristopher L. Conway
2010-02-16Converting semantic predicates in parser to AlwaysAssertionsChristopher L. Conway
2010-02-07Documenting type.h/cppChristopher L. Conway
Making Boolean and Kind types singletons
2010-02-06Preliminary support for types in parserChristopher L. Conway
2010-02-04remove -*- c++ -*- emacs tag from source files (it overrides ↵Morgan Deters
cvc4-c++-editing-mode from contrib/editing-with-emacs
2010-02-04minor fix for update-copyright.pl; ran update-copyright.pl on all sources; ↵Morgan Deters
regenerated configure script
2010-02-03Adding functions/predicates to SMT grammarChristopher L. Conway
2010-02-03Addressed many of the concerns of bug 10 (build system code review).Morgan Deters
Some parts split into other bugs: 19, 20, 21. Addressed concerns of bug 11 (util package code review). Slight parser source file modifications: file comments, #included headers in generated parsers/lexers Added CVC4::Result propagation back through MiniSat->PropEngine->SmtEngine->main(). Silenced MiniSat when verbosity is not requested.
2010-02-03simple ITE parsingDejan Jovanović
2010-02-02Rethrow rewrite in antlr_parser. Taking LT(0) to locate the error causes the ↵Dejan Jovanović
build to break on 64-bit machines. Changed to LT(1), it works now, but i'll ask around how this actually works.
2010-02-02Minor changes to parserChristopher L. Conway
2010-02-01Fixing the CVC grammar for parsing Boolean expressions. All the ↵Dejan Jovanović
associativity stufff is now in the grammar. All the parser tests pass now.
2009-12-18Lots of parser changes to make Chris happy. Yet more to come later. Dejan Jovanović
2009-12-17update-copyright.pl now retrieves and incorporates author information from ↵Morgan Deters
repository history; re-ran update-copyright.pl; cleaned up some things with make
2009-12-15Minor changes to parser files from code review.Christopher L. Conway
2009-12-11Extracted the public Expr and ExprManager interface to encapsulate the ↵Dejan Jovanović
optimized expressions and the internal expression manager.
2009-12-10killing expr into node...Dejan Jovanović
2009-12-08work on propositional layer, expression builder support for large ↵Morgan Deters
expressions, output classes, and minisat
2009-12-07big check-in of various fixes and adjustmentsMorgan Deters
2009-12-07antlr parser for the cvc4 language (boolean only)Dejan Jovanović
yet to be finalized, it should work as expected
2009-12-06Big chunk of changes:Dejan Jovanović
* Fixed bugs in option parsing * Simplified the main.cpp significantly (more c++ like) * Added the null kind, expr value, and expression, with the default constructor public * Simplified commands, we need to discuss this in the meeting (what to do with command results?) * Removed all the lex/yacc files * Symbol table is now a templated class, as we will have tables for variables, predicates and functions * The ANTLR parsing infrastructure/makefiles is all in. SMT lib Boolean benchmarks should parse + giving nice error such as Parse Error: /home/dejan/eclipse-cxx/smtlib-parser/test/test4.smt:3:16: Undeclared variable p Parse Error: /home/dejan/eclipse-cxx/smtlib-parser/test/test2.smt:2:11: unexpected token: sa Didn't add any unit tests as the unit testing doesn't work with the updated build system -- it doesn't know how to create directories in the corresponding build directory. TODO: * add the PL grammar and unit test when the testing becomes available * with this build setup my eclipse debugger doesn't work. Might have something to do with the visibility of symbols? * i'm getting g++ depracated warnings regarding the hash_map from the symbol table, need to figure out how to use it in a standard manner. the new <unordered_map> header is for C++0x, and the <ext/hash_map> is getting deprecation warningns... weird.
2009-12-04Adding support for ANTLR checking in autogen.sh (config/antlr.m4). Commiting ↵Dejan Jovanović
antlr SMT grammar that should compile, but is not yet integrated. Tests of compilation and antlr crashes appreciated.
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback