I can't seem to find an explanation for this and I'm pretty sure that it has previously worked as expected.
SELECT CAST(-1 AS UNSIGNED INTEGER);
Expected: 0
Result: 18446744073709551615
Am I confused, has something changed, or is this a MySQL bug?