https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115379
Andrew Pinski <pinskia at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |INVALID --- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> --- float types are promoted to double when passed via variable arguments. So the warning is 100% correct. Yes maybe it is not expected but this is how c and c++ variable arguments work.