ldionne added a comment. In https://reviews.llvm.org/D50652#1197830, @rnk wrote:
> In https://reviews.llvm.org/D50652#1197780, @ldionne wrote: > > > One thing to keep in mind is that we do not have a solution that allows > > removing both `internal_linkage` and `always_inline`. It's either > > `internal_linkage` or `always_inline`, but you can't get rid of both until > > we fix some problems with extern template declarations and visibility > > attributes. What I can do, however, is reverse the default to use > > `internal_linkage`, and then have a temporary hook that allows Chromium to > > stay on `always_inline`. In the future, we'd remove that hook and the > > choice would be between `internal_linkage` and nothing at all. > > > It's probably worth it to me to debug and understand that problem. Is there a > good explanation of it? http://lists.llvm.org/pipermail/llvm-dev/2018-July/124549.html This is understood, it just needs more work than we can reasonably expect to get into LLVM 7. > Also, if a user could define _LIBCPP_ABI_UNSTABLE, does this problem still > apply? Could we remove the problematic visibility attributes if the ABI is > unstable? I guess in that case, we could simply remove _all_ visibility attributes (and linkage attributes). libc++ may end up exporting more symbols than we want, but defining `_LIBCPP_ABI_UNSTABLE` would explicitly state that we don't care about that. Doing this is a possibility, but don't think this is the way we want to solve the problem at hand. Repository: rCXX libc++ https://reviews.llvm.org/D50652 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits