https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119064

--- Comment #5 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
(In reply to Jason Merrill from comment #3)
> This sounds fine, perhaps with a -Wc++26-compat warning about those names in
> earlier modes.

Ok, done now (but still just starting work on testcases).

> I'd like to get back to using __builtin for builtins.

Ok.  Right now using __builtin_is_trivially_relocatable instead of the clang
surprising __builtin_is_cpp_trivially_relocatable, have tried to convince them
to change, will see.

> Computing it on demand makes sense to me.

The on-demand computation is now implemented.

> I would think we could just make __builtin_memmove work in
> constant-evaluation.

After some more reading, __builtin_memmove is fine if we never do any kind of
pointer signing on the vtable pointers.
I believe we don't implement anything like that right now on any target, but a
builtin would allow changing that just on the compiler side (together with
making unions with polymorphic members no longer trivially relocatable).

Reply via email to