https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98641
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> --- assume_aligned is something different, I guess __builtin_is_aligned expands to an actual runtime check (perhaps optimized away if the pointer can't be misaligned). So I guess __builtin_is_aligned (__builtin_assume_aligned (ptr, 32), 16) should optimize to true... I guess I have big questions on what exactly will it do during constexpr evaluation - if it is on a pointer to object with certain alignment, for smaller alignment arguments guess it is just like pointer arithmetics then, but if it asks for larger alignment, shall it make it non-constant expression?