[libcxx-commits] [PATCH] D140453: [libc++] Remove HIDE_FROM_ABI from virtual functions

Nikolas Klauser via Phabricator via libcxx-commits libcxx-commits at lists.llvm.org
Wed Dec 21 05:43:35 PST 2022


philnik added a comment.

In D140453#4009813 <https://reviews.llvm.org/D140453#4009813>, @ldionne wrote:

> @philnik Do you think writing a clang-tidy check for this would be hard?



  match
  cxxMethodDecl(isVirtual(),
                hasAttr("attr::AbiTag"),
                unless(isExpansionInSystemHeader())
               )

should do the trick (using clang-query for now). Looking at the CI failures I'm not sure just removing the `_LIBCPP_HIDE_FROM_ABI` is the right call here. Maybe we need something like `_LIBCPP_HIDE_VIRTUAL_FUNCTION_FROM_ABI` that gives the functions internal linkage. That didn't suffer from this problem, right? (And also maybe mention the problem in the `_LIBCPP_HIDE_FROM_ABI` explanation in `<__config>`.)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D140453/new/

https://reviews.llvm.org/D140453



More information about the libcxx-commits mailing list