https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109175
--- Comment #4 from Andrew Pinski <pinskia at gcc dot gnu.org> --- auto in = AllocateAligned<float>(padded); The pointer returned here could be a nullptr .... The warning is due to jump threading though. AllocateAligned calls AllocateAlignedItems Which could return nullptr: if (check != items) { return nullptr; } That is checking to make sure there was no wrap around for items*size really.