https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91742
--- Comment #5 from Jonathan Wakely <redi at gcc dot gnu.org> --- (In reply to Diego Franco from comment #4) > It worked on linaro 7.4.1 gcc with c++17, gcc 7.1.0 with c++17 only. Yes, sometimes old versions have incorrect behaviour and they get fixed. I agree this is surprising, but it's not the only weird property of {} initialization.