[Bug 271493] graphics/freeimage: fix build with clang 16
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 18 May 2023 15:13:40 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=271493 Bug ID: 271493 Summary: graphics/freeimage: fix build with clang 16 Product: Ports & Packages Version: Latest Hardware: Any OS: Any Status: New Severity: Affects Some People Priority: --- Component: Individual Port(s) Assignee: eduardo@FreeBSD.org Reporter: dim@FreeBSD.org Flags: maintainer-feedback?(eduardo@FreeBSD.org) Assignee: eduardo@FreeBSD.org Since clang 16 (and gcc 11) the default C++ standard is now gnu++17. Because graphics/freeimage's Makefile does not explicitly set its C++ standard, this leads to several errors: In file included from Source/FreeImage/PluginEXR.cpp:33: In file included from Source/FreeImage/../OpenEXR/IlmImf/ImfOutputFile.h:46: In file included from Source/OpenEXR/IlmImf/ImfHeader.h:51: Source/OpenEXR/Imath/ImathVec.h:228:34: error: ISO C++17 does not allow dynamic exception specifications [-Wdynamic-exception-spec] const Vec2 & normalizeExc () throw (IEX_NAMESPACE::MathExc); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Source/OpenEXR/Imath/ImathVec.h:228:34: note: use 'noexcept(false)' instead const Vec2 & normalizeExc () throw (IEX_NAMESPACE::MathExc); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ noexcept(false) Source/OpenEXR/Imath/ImathVec.h:232:37: error: ISO C++17 does not allow dynamic exception specifications [-Wdynamic-exception-spec] Vec2<T> normalizedExc () const throw (IEX_NAMESPACE::MathExc); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Source/OpenEXR/Imath/ImathVec.h:232:37: note: use 'noexcept(false)' instead Vec2<T> normalizedExc () const throw (IEX_NAMESPACE::MathExc); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ noexcept(false) Because these constructs are no longer available in C++17, add USE_CXXSTD=gnu++14 to compile for C++14 with GNU extensions instead. -- You are receiving this mail because: You are the assignee for the bug.