Fix issue with mkConst/getConst of TypeConstant (#1439)
authorAndres Noetzli <andres.noetzli@gmail.com>
Sun, 10 Dec 2017 08:48:05 +0000 (00:48 -0800)
committerGitHub <noreply@github.com>
Sun, 10 Dec 2017 08:48:05 +0000 (00:48 -0800)
When compiling the Java bindings on macOS, the linker complained about
CVC4::ExprManager::mkConst<CVC4::TypeConstant>() and
CVC4::Expr::getConst<CVC4::TypeConstant>() being undefined. After some
research, I found that the issue has been introduced by commit
36bf9f8bcb2a1a3aea1f90eb4d13aed3bbf6da8f. It looks like adding the
-no-undefined flags resulted in the symbols in question being omitted
due to TypeConstant not being exported. This commit makes TypeConstant
CVC4_PUBLIC, which fixes the issue.

src/expr/kind_template.h

index 170f51df1dcbcb95e28bbf34c030911b75605b2f..9247f50dd1988b9d45a8152f5d53056376b6990c 100644 (file)
@@ -64,7 +64,7 @@ struct KindHashFunction {
 /**
  * The enumeration for the built-in atomic types.
  */
-enum TypeConstant {
+enum CVC4_PUBLIC TypeConstant {
 ${type_constant_list}
 #line 70 "${template}"
   LAST_TYPE