← Back to context

Comment by RossBencina

8 days ago

> e.g. atomic alignment (by adopting the broken C++ design into C)

I would like to learn more about that. Do you mean this:

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

Things like this resulting in differnt alignment between Clang and GCC on x86_64 for _Atomic struct { char a[3]; }; See: https://godbolt.org/z/v5hsjhzj9

The problem is that in C++ these atomics are library types, but in C they are built-in types which should have a clearly specified ABI. But the goal was to make them compatibility with C++ library types, which is a rather stupid idea, which pulls in even more problems.