diff options
author | Morgan Deters <mdeters@gmail.com> | 2011-09-21 05:02:58 +0000 |
---|---|---|
committer | Morgan Deters <mdeters@gmail.com> | 2011-09-21 05:02:58 +0000 |
commit | 5f742fbd0ddb1b7e89bd9f7ce8fd38bed2ebc3db (patch) | |
tree | f0e192ace74db8cc2d8df4348a15d49560b8dd2b /src/util | |
parent | 3b1689612bb2ff984aa90cd84093ffc043d78ba9 (diff) |
Java binding now working. Some interface types still need some work (e.g. iterators aren't functional). Also, output isn't very flexible yet, as I told SWIG to ignore all the operator<<'s.
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/Makefile.am | 15 | ||||
-rw-r--r-- | src/util/configuration.cpp | 6 | ||||
-rw-r--r-- | src/util/configuration.i | 2 | ||||
-rw-r--r-- | src/util/options.i | 2 |
4 files changed, 14 insertions, 11 deletions
diff --git a/src/util/Makefile.am b/src/util/Makefile.am index b8bdfabeb..f3aba34cd 100644 --- a/src/util/Makefile.am +++ b/src/util/Makefile.am @@ -97,15 +97,12 @@ endif %_tags.h: %_tags $(AM_V_GEN)( \ - echo 'static char const *const $^[] = {'; \ - first=1; \ - for tag in `cat $^`; \ - do \ - if [ $$first -eq 1 ]; then first=0; else echo ','; fi; \ - echo -n "\"$$tag\""; \ - done; \ - echo; \ - echo '};' \ + echo 'static char const* const $^[] = {'; \ + for tag in `cat $^`; do \ + echo "\"$$tag\","; \ + done; \ + echo 'NULL'; \ + echo '};' \ ) >"$@" # This .tmp business is to keep from having to re-compile options.cpp diff --git a/src/util/configuration.cpp b/src/util/configuration.cpp index 062aca478..7225b8108 100644 --- a/src/util/configuration.cpp +++ b/src/util/configuration.cpp @@ -137,7 +137,8 @@ char const* const* Configuration::getDebugTags() { #if CVC4_DEBUG return Debug_tags; #else /* CVC4_DEBUG */ - return NULL; + static char const* no_tags[] = { NULL }; + return no_tags; #endif /* CVC4_DEBUG */ } @@ -153,7 +154,8 @@ char const* const* Configuration::getTraceTags() { #if CVC4_TRACING return Trace_tags; #else /* CVC4_TRACING */ - return NULL; + static char const* no_tags[] = { NULL }; + return no_tags; #endif /* CVC4_TRACING */ } diff --git a/src/util/configuration.i b/src/util/configuration.i index 17c1b974b..240131592 100644 --- a/src/util/configuration.i +++ b/src/util/configuration.i @@ -2,4 +2,6 @@ #include "util/configuration.h" %} +%apply char **STRING_ARRAY { char const* const* } %include "util/configuration.h" +%clear char const* const*; diff --git a/src/util/options.i b/src/util/options.i index 9e0caccd6..bdafefd07 100644 --- a/src/util/options.i +++ b/src/util/options.i @@ -5,4 +5,6 @@ %ignore CVC4::operator<<(std::ostream&, Options::SimplificationMode); %ignore CVC4::operator<<(std::ostream&, Options::ArithPivotRule); +%apply char** STRING_ARRAY { char* argv[] } %include "util/options.h" +%clear char* argv[]; |