https://gcc.gnu.org/bugzilla/show_bug.cgi?id=111897
--- Comment #2 from Agner Fog <agner at agner dot org> --- Thank you Jonathan. The problem is that the C++ standard is becoming so complicated that nobody can master it, not even the persons who wrote the example in the proposal. `_Float16 A{1.0};` gives a warning, which apparently is wrong. `_Float16 A = 1;` gives no warning. `_Float16 A = 1.5f16;` gives no warning, but I am not sure the f16 suffix is supported by all compilers