https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70056
--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> --- (In reply to Juan Arrieta from comment #1) > Possibly related to bug 65719. Not only related but an exact dup as you said: > The original code (with the unary minus) compiles and runs fine using > clang 3.6.0 and gcc 5.2.0. So you are reporting a bug that was already fixed in a newer maintenance release of GCC 5 series. GCC changed how version numbers are assigned starting with GCC 5, please read https://gcc.gnu.org/develop.html#num_scheme about it. What was X.Y.Z became A.Z.0 where A increases by 1 every non-maintenance release.