diff options
Diffstat (limited to 'src/cvc4.i')
-rw-r--r-- | src/cvc4.i | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/src/cvc4.i b/src/cvc4.i index 8a8157699..7723aee6e 100644 --- a/src/cvc4.i +++ b/src/cvc4.i @@ -1,4 +1,5 @@ %import "bindings/swig.h" + %include "stdint.i" %include "stl.i" @@ -20,6 +21,19 @@ namespace std { # undef seed #endif /* SWIGPERL */ +// OCaml's headers define "invalid_argument" and "flush" to +// caml_invalid_argument and caml_flush, which breaks C++ +// standard headers; undo this damage +// +// Unfortunately, this doesn't happen early enough. swig puts an +// include <stdexcept> very early, which breaks linking due to a +// nonexistent std::caml_invalid_argument symbol.. ridiculous! +// +#ifdef SWIGOCAML +# undef flush +# undef invalid_argument +#endif /* SWIGOCAML */ + namespace CVC4 {} using namespace CVC4; |