Specifically, output.h was moved to CVC4's "private-library" rules, which means that it's
not installed on users' machines, and public headers should not include it.
Thanks to Alex Horn for raising the issue on the CVC-BUGS mailing list.
#include "util/hash.h"
#include "util/subrange_bound.h"
#include "util/predicate.h"
+#include "util/output.h"
#include "parser/parser.h"
#include "parser/parser_builder.h"
#ifndef __CVC4_PRIVATE_LIBRARY_H
#define __CVC4_PRIVATE_LIBRARY_H
-#if ! (defined(__BUILDING_CVC4LIB) || defined(__BUILDING_CVC4LIB_UNIT_TEST) || defined(__BUILDING_CVC4PARSERLIB) || defined(__BUILDING_CVC4PARSERLIB_UNIT_TEST) || defined(__BUILDING_CVC4DRIVER))
+#if ! (defined(__BUILDING_CVC4LIB) || defined(__BUILDING_CVC4LIB_UNIT_TEST) || defined(__BUILDING_CVC4PARSERLIB) || defined(__BUILDING_CVC4PARSERLIB_UNIT_TEST) || defined(__BUILDING_CVC4COMPATLIB) || defined(__BUILDING_CVC4DRIVER))
# warning A "private library" CVC4 header was included when not building the library, driver, or private unit test code.
#endif /* ! (__BUILDING_CVC4LIB || __BUILDING_CVC4LIB_UNIT_TEST || __BUILDING_CVC4PARSERLIB || __BUILDING_CVC4PARSERLIB_UNIT_TEST || __BUILDING_CVC4DRIVER) */
#include "parser/parser_builder.h"
#include "options/options.h"
#include "util/language.h"
+#include "util/output.h"
#include <string.h>
#include <cassert>
** Base for ANTLR parser classes.
**/
+#include <antlr3.h>
+
+// ANTLR3 headers define these in our space :(
+// undef them so that we don't get multiple-definition warnings
+#undef PACKAGE_BUGREPORT
+#undef PACKAGE_NAME
+#undef PACKAGE_STRING
+#undef PACKAGE_TARNAME
+#undef PACKAGE_VERSION
+
#include "cvc4parser_private.h"
#ifndef __CVC4__PARSER__ANTLR_INPUT_H
#define __CVC4__PARSER__ANTLR_INPUT_H
-#include <antlr3.h>
#include <iostream>
#include <sstream>
#include <stdexcept>
#include "util/bitvector.h"
#include "util/integer.h"
#include "util/rational.h"
+#include "util/output.h"
namespace CVC4 {
**/
#include <antlr3.h>
+
+// ANTLR3 headers define these in our space :(
+// undef them so that we don't get multiple-definition warnings
+#undef PACKAGE_BUGREPORT
+#undef PACKAGE_NAME
+#undef PACKAGE_STRING
+#undef PACKAGE_TARNAME
+#undef PACKAGE_VERSION
+
#include <iostream>
#include <string>
#include <cassert>
#include "expr/expr.h"
#include "expr/type.h"
-#include "util/output.h"
#include "util/hash.h"
#include "util/exception.h"
#ifndef __CVC4__DUMP_H
#define __CVC4__DUMP_H
-#include "util/output.h"
#include "expr/command.h"
namespace CVC4 {
** Output utility classes and functions.
**/
-#include "cvc4_public.h"
+#include "cvc4_private_library.h"
#ifndef __CVC4__OUTPUT_H
#define __CVC4__OUTPUT_H
void testIsConst() {
/* bool isConst() const; */
- Debug.on("isConst");
+ //Debug.on("isConst");
TS_ASSERT(!a_bool->isConst());
TS_ASSERT(!b_bool->isConst());
}
void testBitvectors() {
- Debug.on("bvcard");
+ //Debug.on("bvcard");
TS_ASSERT( d_em->mkBitVectorType(0).getCardinality().compare(0) == Cardinality::EQUAL );
Cardinality lastCard = 0;
for(unsigned i = 1; i <= 65; ++i) {