Created attachment 892181 [details] build log FAILED: src/CMakeFiles/xerces-c.dir/xercesc/util/PlatformUtils.cpp.o /usr/bin/x86_64-pc-linux-gnu-g++ -DHAVE_CONFIG_H=1 -DXERCES_BUILDING_LIBRARY=1 -D_FILE_OFFSET_BITS=64 -Dxerces_c_EXPORTS -I/var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4_build -I/var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4/src -I/var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4_build/src -march=alderlake -mabm -mno-cldemote -mno-kl -mno-pconfig -mno-sgx -mno-widekl -mshstk -O3 -pipe -falign-functions=32 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -Werror=odr -Werror=lto-type-mismatch -Werror=strict-aliasing -fno-strict-aliasing -Wall -Wcast-align -Wcast-qual -Wctor-dtor-privacy -Wextra -Wformat=2 -Wmissing-declarations -Wno-long-long -Woverlength-strings -Woverloaded-virtual -Wredundant-decls -Wreorder -Wswitch-default -Wunused-variable -Wwrite-strings -Wno-variadic-macros -msse2 -std=gnu++14 -fPIC -MD -MT src/CMakeFiles/xerces-c.dir/xercesc/util/PlatformUtils.cpp.o -MF src/CMakeFiles/xerces-c.dir/xercesc/util/PlatformUtils.cpp.o.d -o src/CMakeFiles/xerces-c.dir/xercesc/util/PlatformUtils.cpp.o -c /var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4/src/xercesc/util/PlatformUtils.cpp In file included from /var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4/src/xercesc/util/XMLNetAccessor.hpp:26, from /var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4/src/xercesc/util/PlatformUtils.cpp:82: /var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4/src/xercesc/util/XMLURL.hpp: In member function ‘const XMLCh* xercesc_3_2::XMLURL::getURLText() const’: /var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4/src/xercesc/util/XMLURL.hpp:277:10: warning: cast from type ‘const xercesc_3_2::XMLURL*’ to type ‘xercesc_3_2::XMLURL*’ casts away qualifiers [-Wcast-qual] 277 | ((XMLURL*)this)->buildFullText(); | ^~~~~~~~~~~~~ In file included from /usr/include/unicode/uenum.h:25, from /usr/include/unicode/uloc.h:27, from /usr/include/unicode/ures.h:30, from /var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4/src/xercesc/util/MsgLoaders/ICU/ICUMsgLoader.hpp:26, from /var/tmp/portage/dev-libs/xerces-c-3.2.4-r3/work/xerces-c-3.2.4/src/xercesc/util/PlatformUtils.cpp:99: /usr/include/unicode/localpointer.h: At global scope: /usr/include/unicode/localpointer.h:561:26: error: ‘auto’ parameter not permitted in this context 561 | template <typename Type, auto closeFunction> | ^~~~ /usr/include/unicode/localpointer.h:573:76: error: template argument 2 is invalid 573 | explicit LocalOpenPointer(std::unique_ptr<Type, decltype(closeFunction)> &&p) | ^ /usr/include/unicode/localpointer.h:583:78: error: template argument 2 is invalid 583 | LocalOpenPointer &operator=(std::unique_ptr<Type, decltype(closeFunction)> &&p) { | ^ /usr/include/unicode/localpointer.h:599:59: error: template argument 2 is invalid 599 | operator std::unique_ptr<Type, decltype(closeFunction)> () && { | ^ /usr/include/unicode/uenum.h:69:1: note: invalid template non-type parameter 69 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUEnumerationPointer, UEnumeration, uenum_close); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/unicode/ures.h:268:1: note: invalid template non-type parameter 268 | U_DEFINE_LOCAL_OPEN_POINTER(LocalUResourceBundlePointer, UResourceBundle, ures_close); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /usr/include/unicode/unistr.h:39, from /usr/include/unicode/ures.h:798: /usr/include/unicode/stringpiece.h:134:23: error: ‘is_same_v’ is not a member of ‘std’; did you mean ‘is_same’? 134 | (std::is_same_v<decltype(T().data()), const char*> | ^~~~~~~~~ | is_same /usr/include/unicode/stringpiece.h:134:66: error: template argument 1 is invalid 134 | (std::is_same_v<decltype(T().data()), const char*> | ^ /usr/include/unicode/stringpiece.h:138:17: error: expected ‘>’ before ‘)’ token 138 | ) && | ^ /usr/include/unicode/stringpiece.h:138:17: error: expected unqualified-id before ‘)’ toke
Created attachment 892182 [details, diff] Patch which fixes the build failure Adding -std=gnu++17 or -std=c++17 to CXXFLAGS does nothing since it gets overriden by CMakeLists.txt.