summaryrefslogtreecommitdiff
path: root/src/cvc4.i
diff options
context:
space:
mode:
authorMorgan Deters <mdeters@gmail.com>2011-11-15 22:34:18 +0000
committerMorgan Deters <mdeters@gmail.com>2011-11-15 22:34:18 +0000
commit78af7dfd469b43c17c3ad582a094068484955037 (patch)
tree2d05cf1390731e1c7fd8d433768c9b436ff60baf /src/cvc4.i
parent15193d5207679b24cd2f310f71c9428971564b53 (diff)
Bindings work (ocaml bindings are now sort of working); also minor cleanup
Diffstat (limited to 'src/cvc4.i')
-rw-r--r--src/cvc4.i14
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;
generated by cgit on debian on lair
contact matthew@masot.net with questions or feedback