* some build fixes; thanks; thanks to Kunal Ganeshpure for noting these issues
authorMorgan Deters <mdeters@gmail.com>
Thu, 6 Dec 2012 01:38:17 +0000 (01:38 +0000)
committerMorgan Deters <mdeters@gmail.com>
Thu, 6 Dec 2012 01:38:17 +0000 (01:38 +0000)
* build bugfix for win32
* also fix a bug re: tuples and records in the datatypes rewriter

These fixes are for both trunk and 1.0.x branches.

src/prop/bvminisat/utils/System.h
src/theory/datatypes/datatypes_rewriter.h
src/util/exception.h
src/util/lemma_input_channel.h
src/util/lemma_output_channel.h
src/util/proof.h

index f9fe708bb2e1d6b402e6352f15c9cdea55919b7b..4b4b73cb910a1901a4bc83224088b043e25358b4 100644 (file)
@@ -43,7 +43,7 @@ extern double memUsedPeak();        // Peak-memory in mega bytes (returns 0 for
 #if defined(_MSC_VER) || defined(__MINGW32__)
 #include <time.h>
 
-static inline double Minisat::cpuTime(void) { return (double)clock() / CLOCKS_PER_SEC; }
+static inline double BVMinisat::cpuTime(void) { return (double)clock() / CLOCKS_PER_SEC; }
 
 #else
 #include <sys/time.h>
index 7d7578983103420735074902ed4a9a3020026790..b503087c9b1c86d130121a92f10e72932b90472d 100644 (file)
@@ -177,7 +177,7 @@ public:
     }
     if(in.getKind() == kind::RECORD_UPDATE &&
        in[0].getKind() == kind::RECORD) {
-      size_t ix = in[0].getOperator().getConst<Record>().getIndex(in.getConst<RecordUpdate>().getField());
+      size_t ix = in[0].getOperator().getConst<Record>().getIndex(in.getOperator().getConst<RecordUpdate>().getField());
       NodeBuilder<> b(kind::RECORD);
       b << in[0].getOperator();
       for(TNode::const_iterator i = in[0].begin(); i != in[0].end(); ++i, --ix) {
index 31318775fdf8be692e6a6dc8205239b694879eb6..b367f20e58a8f904189662d02521d364b815e9c0 100644 (file)
@@ -22,6 +22,7 @@
 #include <iostream>
 #include <string>
 #include <sstream>
+#include <stdexcept>
 #include <exception>
 #include <cstdlib>
 #include <cstdarg>
index 785ddada38958ab2b96cdec537264b368dc0e5fa..44ab05a412f22b8ab500a86f186c017b32bd81f8 100644 (file)
@@ -26,6 +26,8 @@ namespace CVC4 {
 
 class CVC4_PUBLIC LemmaInputChannel {
 public:
+  virtual ~LemmaInputChannel() throw() { }
+
   virtual bool hasNewLemma() = 0;
   virtual Expr getNewLemma() = 0;
 
index 8b37fe0da7834a45ede068641ebd33ffd84c8d57..47ba7c346a1b7ae04e40ca4a8c8fdb10c1bac7e2 100644 (file)
@@ -32,6 +32,8 @@ namespace CVC4 {
  */
 class CVC4_PUBLIC LemmaOutputChannel {
 public:
+  virtual ~LemmaOutputChannel() throw() { }
+
   /**
    * Notifies this output channel that there's a new lemma.
    * The lemma may or may not be in CNF.
index 6539dadc8e29a2110bd5d26e3786dba5b3ba8faa..9d189e99417916c9ea62a0a221917afd8922e8cf 100644 (file)
@@ -26,6 +26,7 @@ namespace CVC4 {
 
 class CVC4_PUBLIC Proof {
 public:
+  virtual ~Proof() { }
   virtual void toStream(std::ostream& out) = 0;
 };/* class Proof */