[libcxx-commits] [libcxx] [libc++] Introduce ABI sensitive areas to avoid requiring _LIBCPP_HIDE_FROM_ABI everywhere (PR #131156)
Nikolas Klauser via libcxx-commits
libcxx-commits at lists.llvm.org
Wed May 28 01:20:54 PDT 2025
philnik777 wrote:
> > Do you have breakage with hash specifically as well, or are there other cases?
>
> The first issue encountered was actually on `std::equal_to`. I've not attempted a rebuild of the entire codebase, however I fully expect to also run into the same issue for at least `hash`, `tuple_size`, and `tuple_element`. I suspect there's also others, besides.
>
> > That is quite interesting. I don't really know what the code does, but given the results it seems somehow wrong.
>
> I don't think it's _wrong_. Rather, I'd say: when the attribute is used the way libc++ has attempted, this intended-behavior of the compiler results in invalid outcomes.
Whether or not it's used as intended in libc++ doesn't matter. It's inconsistent with itself, which makes it wrong no matter what the intended behvaiour is.
> It's conceivable that with further investigation we could determine that the behavior of the compiler should be changed -- but I think it's much more likely we'd determine that there's good reason to keep the current behavior of the compiler, and that libc++ should just not attempt use the attribute in this manner.
https://github.com/llvm/llvm-project/pull/131156
More information about the libcxx-commits
mailing list