[Bug 276749] databases/mysql80-server: fix build with clang 16
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 31 Jan 2024 18:51:37 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=276749
Bug ID: 276749
Summary: databases/mysql80-server: 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: joneum@FreeBSD.org
Reporter: dim@FreeBSD.org
Assignee: joneum@FreeBSD.org
Flags: maintainer-feedback?(joneum@FreeBSD.org)
Similar to bug 272295, building databases/mysql80-server with clang 16
or higher can result in an error:
/wrkdirs/usr/ports/databases/mysql80-server/work/mysql-8.0.35/boost/boost_1_77_0/boost/mpl/aux_/integral_wrapper.hpp:73:31:
error: integer value -1 is outside the valid range of values [0, 3] for the
enumeration type 'udt_builtin_mixture_enum' [-Wenum-constexpr-conversion]
73 | typedef AUX_WRAPPER_INST(
BOOST_MPL_AUX_STATIC_CAST(AUX_WRAPPER_VALUE_TYPE, (value - 1)) ) prior;
| ^
/wrkdirs/usr/ports/databases/mysql80-server/work/mysql-8.0.35/boost/boost_1_77_0/boost/mpl/aux_/static_cast.hpp:24:47:
note: expanded from macro 'BOOST_MPL_AUX_STATIC_CAST'
24 | # define BOOST_MPL_AUX_STATIC_CAST(T, expr) static_cast<T>(expr)
| ^
This is because the vendored copy of boost in mysql80-server is using
undefined behavior in a possibly constexpr context.
Fix this by unconditionally enabling the "boost workaround" for aux
wrapper value types in integral_wrapper.hpp.
--
You are receiving this mail because:
You are the assignee for the bug.