Date: Tue, 15 Feb 2022 20:43:14 +0000 From: bugzilla-noreply@freebsd.org To: ports-bugs@FreeBSD.org Subject: [Bug 261976] databases/postgresql14-server: disallow devel/llvm14 for now Message-ID: <bug-261976-7788@https.bugs.freebsd.org/bugzilla/>
next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D261976 Bug ID: 261976 Summary: databases/postgresql14-server: disallow devel/llvm14 for now Product: Ports & Packages Version: Latest Hardware: Any OS: Any Status: New Severity: Affects Some People Priority: --- Component: Individual Port(s) Assignee: ports-bugs@FreeBSD.org Reporter: dim@FreeBSD.org CC: brooks@FreeBSD.org, pgsql@FreeBSD.org CC: brooks@FreeBSD.org, pgsql@FreeBSD.org During an exp-run for llvm 14 (see bug 261742), it turned out that databases/postgresql14-server and the other slaved postgresql-server ports = fail to build when the base system compiler is clang 14 (note this is from the = i386 exp-run, after devel/llvm14 was introduced: ... g++10 -Wall -Wpointer-arith -Wendif-labels -Wmissing-format-attribute -Wimplicit-fallthrough=3D3 -Wcast-function-type -Wformat-security -fno-strict-aliasing -fwrapv -O2 -pipe -fstack-protector-strong -Wl,-rpath=3D/usr/local/lib/gcc10 -nostdinc++ -isystem /usr/include/c++/v1 -Wl,-rpath=3D/usr/local/lib/gcc10 -std=3Dc++14 -fPIC -DPIC -D__STDC_LIMIT_= MACROS -D__STDC_FORMAT_MACROS -D__STDC_CONSTANT_MACROS -D_FILE_OFFSET_BITS=3D64 -D_LARGEFILE_SOURCE -I/usr/local/llvm14/include -I../../../../src/include -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/local/include -I/usr/local/include -c -o llvmjit_error.o llvmjit_error.cpp llvmjit_error.cpp:28:13: error: 'new_handler' in namespace 'std' does not n= ame a type 28 | static std::new_handler old_new_handler =3D NULL; | ^~~~~~~~~~~ llvmjit_error.cpp:32:64: error: 'string' in namespace 'std' does not name a type 32 | static void fatal_llvm_new_handler(void *user_data, const std::stri= ng& reason, bool gen_crash_diag); | ^~~~= ~~ llvmjit_error.cpp:25:1: note: 'std::string' is defined in header '<string>'; did you forget to '#include <string>'? 24 | #include "jit/llvmjit.h" +++ |+#include <string> 25 | llvmjit_error.cpp:34:66: error: 'string' in namespace 'std' does not name a type 34 | static void fatal_llvm_error_handler(void *user_data, const std::string& reason, bool gen_crash_diag); | ^~= ~~~~ llvmjit_error.cpp:34:61: note: 'std::string' is defined in header '<string>= '; did you forget to '#include <string>'? 34 | static void fatal_llvm_error_handler(void *user_data, const std::string& reason, bool gen_crash_diag); | ^~~ llvmjit_error.cpp: In function 'void llvm_enter_fatal_on_oom()': llvmjit_error.cpp:60:3: error: 'old_new_handler' was not declared in this s= cope 60 | old_new_handler =3D std::set_new_handler(fatal_system_new_handler= ); | ^~~~~~~~~~~~~~~ llvmjit_error.cpp:60:26: error: 'set_new_handler' is not a member of 'std' 60 | old_new_handler =3D std::set_new_handler(fatal_system_new_handler= ); | ^~~~~~~~~~~~~~~ llvmjit_error.cpp:62:41: error: invalid conversion from 'void (*)(void*, co= nst int&, bool)' to 'llvm::fatal_error_handler_t' {aka 'void (*)(void*, const char*, bool)'} [-fpermissive] 62 | llvm::install_bad_alloc_error_handler(fatal_llvm_new_handler); | ^~~~~~~~~~~~~~~~~~~~~~ | | | void (*)(void*, const int&, bool) There seem to be a few changes in the LLVM C and C++ APIs, and until upstre= am postgresql adapts to these changes, I think it is necessary to specifically limit the PG_LLVM_VERSION to a maximum of 13. --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-261976-7788>