diff options
author | Morgan Deters <mdeters@gmail.com> | 2011-05-02 05:04:36 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2011-05-02 05:04:36 +0000 |
commit | 99c42d62491307279403059690fa31be1fb3af63 (patch) | |
tree | 8f8a40a893e1a59e28015201f907e2cecede3294 /src/parser/cvc/Cvc.g | |
parent | bf837ea666980a0556d7881316f34be7ad1e2ea2 (diff) |
Minor fixes to various parts of CVC4, including the removal of the uintptr_t constructors for Type and Expr (which existed due to ANTLR limitations). These issues are now handled (as a hack, due to said limitations) in the parser rather than the CVC4 core.
Diffstat (limited to 'src/parser/cvc/Cvc.g')
-rw-r--r-- | src/parser/cvc/Cvc.g | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/parser/cvc/Cvc.g b/src/parser/cvc/Cvc.g index 8df9ea6a0..af0024156 100644 --- a/src/parser/cvc/Cvc.g +++ b/src/parser/cvc/Cvc.g @@ -433,6 +433,7 @@ Expr addNots(ExprManager* em, size_t n, Expr e) { @parser::includes { +#include <stdint.h> #include "expr/command.h" #include "parser/parser.h" #include "util/subrange_bound.h" @@ -440,9 +441,7 @@ Expr addNots(ExprManager* em, size_t n, Expr e) { namespace CVC4 { class Expr; -}/* CVC4 namespace */ -namespace CVC4 { namespace parser { namespace cvc { /** @@ -469,6 +468,17 @@ namespace CVC4 { mySubrangeBound(const Integer& i) : CVC4::SubrangeBound(i) {} mySubrangeBound(const SubrangeBound& b) : CVC4::SubrangeBound(b) {} };/* class mySubrangeBound */ + + /** + * Just exists to give us the uintptr_t construction that + * ANTLR requires. + */ + struct myExpr : public CVC4::Expr { + myExpr() : CVC4::Expr() {} + myExpr(uintptr_t) : CVC4::Expr() {} + myExpr(const Expr& e) : CVC4::Expr(e) {} + myExpr(const myExpr& e) : CVC4::Expr(e) {} + };/* struct myExpr */ }/* CVC4::parser::cvc namespace */ }/* CVC4::parser namespace */ }/* CVC4 namespace */ @@ -521,7 +531,7 @@ using namespace CVC4::parser; * Parses an expression. * @return the parsed expression */ -parseExpr returns [CVC4::Expr expr] +parseExpr returns [CVC4::parser::cvc::myExpr expr] : formula[expr] | EOF ; |