This was fixed upstream, but the fix clashes with Ubuntu's
reintroduction of my_bool as a bool.
Ubuntu has:
typedef bool my_bool;
When isc-kea finds my_bool, it does this:
#define HAVE_MYSQL_MY_BOOL
typedef my_bool my_bools;
const my_bool MLM_FALSE = 0;
const my_bool MLM_TRUE = 1;
So now we have my_bools as a bool.
The code later does this (one example, there other places):
static void setErrorIndicators(std::vector<MYSQL_BIND>& bind,
std::vector<my_bools>& error) {
for (size_t i = 0; i < error.size(); ++i) {
error[i] = MLM_FALSE;
#ifdef HAVE_MYSQL_MY_BOOL
bind[i].error = reinterpret_cast<char*>(&error[i]);
#else
bind[i].error = reinterpret_cast<bool*>(&error[i]);
#endif
Since HAVE_MYSQL_MY_BOOL was defined (because of Ubuntu's workaround),
this is executed:
bind[i].error = reinterpret_cast<char*>(&error[i]);
And it fails because MYSQL_BIND.error is, in mysql 8, a bool, not a
char.
** Changed in: isc-kea (Ubuntu)
Status: New => In Progress
** Changed in: isc-kea (Ubuntu)
Assignee: (unassigned) => Andreas Hasenack (ahasenack)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1795314
Title:
FTBFS with MySQL 8.0
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/isc-kea/+bug/1795314/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs