jankratochvil created this revision. jankratochvil added a reviewer: clang. jankratochvil added a project: clang.
With `z3-4.8.1` as found in Fedora Rawhide (future Fedora 30) as `z3-devel-4.8.1-1.fc30.x86_64`: ../tools/clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp: In function 'void {anonymous}::Z3ErrorHandler(Z3_context, Z3_error_code)': ../tools/clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp:49:40: error: 'Z3_get_error_msg_ex' was not declared in this scope llvm::Twine(Z3_get_error_msg_ex(Context, Error))); ^~~~~~~~~~~~~~~~~~~ ../tools/clang/lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp:49:40: note: suggested alternative: 'Z3_get_error_msg' llvm::Twine(Z3_get_error_msg_ex(Context, Error))); ^~~~~~~~~~~~~~~~~~~ Z3_get_error_msg clang CMakeLists.txt has: find_package(Z3 4.7.1 EXACT) Despite cmake documentation <https://cmake.org/cmake/help/v3.11/command/find_package.html#version-selection> claims "//If no such version file is available then the configuration file is assumed to not be compatible with any requested version.//" in reality `cmake-3.12.2-1.fc30.x86_64` with `z3-devel-4.8.1-1.fc30.x86_64` still does find it: -- Found Z3: /usr/lib64/libz3.so (Required is exact version "4.7.1") clang is using `Z3_get_error_msg_ex()`, already `/usr/include/z3/z3_api.h` of `z3-devel-4.7.1-1.fc28.x86_64` states for it "`Retained function name for backwards compatibility within v4.1`" and it is implemented only as: Z3_API char const * Z3_get_error_msg_ex(Z3_context c, Z3_error_code err) { return Z3_get_error_msg(c, err); } Repository: rC Clang https://reviews.llvm.org/D54391 Files: lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp Index: lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp =================================================================== --- lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp +++ lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp @@ -46,7 +46,7 @@ // Function used to report errors void Z3ErrorHandler(Z3_context Context, Z3_error_code Error) { llvm::report_fatal_error("Z3 error: " + - llvm::Twine(Z3_get_error_msg_ex(Context, Error))); + llvm::Twine(Z3_get_error_msg(Context, Error))); } /// Wrapper for Z3 context
Index: lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp =================================================================== --- lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp +++ lib/StaticAnalyzer/Core/Z3ConstraintManager.cpp @@ -46,7 +46,7 @@ // Function used to report errors void Z3ErrorHandler(Z3_context Context, Z3_error_code Error) { llvm::report_fatal_error("Z3 error: " + - llvm::Twine(Z3_get_error_msg_ex(Context, Error))); + llvm::Twine(Z3_get_error_msg(Context, Error))); } /// Wrapper for Z3 context
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits