diff options
author | Louis Dionne <ldionne@apple.com> | 2018-10-29 17:30:04 +0000 |
---|---|---|
committer | Louis Dionne <ldionne@apple.com> | 2018-10-29 17:30:04 +0000 |
commit | e9d85264ac4cdf505c7497612d3fe7630590c52f (patch) | |
tree | 489fd2dbd3218bee162954d2c233dafe0413408a /clang/test/CoverageMapping/loops.cpp | |
parent | bfd32d437757d8015460cfed214eb61af85af88e (diff) | |
download | bcm5719-llvm-e9d85264ac4cdf505c7497612d3fe7630590c52f.tar.gz bcm5719-llvm-e9d85264ac4cdf505c7497612d3fe7630590c52f.zip |
[libc++] Use exclude_from_explicit_instantiation instead of always_inline
Summary:
This commit adopts the exclude_from_explicit_instantiation attribute discussed
at [1] and reviewed in [2] in libc++ to supplant the use of __always_inline__
for visibility purposes.
This change means that users wanting to link together translation units built
with different versions of libc++'s headers into the same final linked image
MUST define the _LIBCPP_HIDE_FROM_ABI_PER_TU macro to 1 when building those
TUs. Doing otherwise will lead to ODR violations and ABI issues.
[1]: http://lists.llvm.org/pipermail/cfe-dev/2018-August/059024.html
[2]: https://reviews.llvm.org/D51789
Reviewers: rsmith, EricWF
Subscribers: dexonsmith, libcxx-commits
Differential Revision: https://reviews.llvm.org/D52405
llvm-svn: 345516
Diffstat (limited to 'clang/test/CoverageMapping/loops.cpp')
0 files changed, 0 insertions, 0 deletions