llvm-project/libcxx/lib
Eric Fiselier 9dbb5586b5 [libcxx] Reexport std::bad_array_length symbols from libc++abi on OS X.
Summary:
On OS X libc++ needs to reexport libc++abi's symbols in order for them to be provided. We explicitly list the symbols to reexport it libcxx/lib/libc++abi2.exp. This patch adds the symbols required by std::bad_array_length which have been missing for some time.

However there is a problem. std::bad_array_length was add to libc++abi in September of 2013 by commit r190479, about a year after everything else. Therefore I think older OS X version  have libc++abi versions without std::bad_array_length. On those systems
libc++ won't build with this change because we will try and export undefined symbols.

The workaround I would write to support older systems depends on the amount of people who would need it.   If only a small number of developers are affected it might be sufficient to provide a CMake switch like `LIBCPP_LIBCPPABI_HAS_BAD_ARRAY_LENGTH` which is
ON by default and can be disabled by those who need it. Otherwise I think we should try to automatically detect if the symbols are present in `/usr/lib/libc++abi.dylib` and configure accordingly. I would prefer the first solution because writing CMake sucks.




Reviewers: mclow.lists, aprantl

Subscribers: aprantl, cfe-commits

Differential Revision: http://reviews.llvm.org/D13445

llvm-svn: 249339
2015-10-05 19:28:48 +00:00
..
CMakeLists.txt [libcxx] Reexport std::bad_array_length symbols from libc++abi on OS X. 2015-10-05 19:28:48 +00:00
buildit Not everyone uses bash, so fix test syntax. 2014-04-12 21:12:55 +00:00
libc++abi.exp Add typeinfo for char16_t, char32_t and nullptr. 2010-12-03 17:25:24 +00:00
libc++abi2.exp [libcxx] Reexport std::bad_array_length symbols from libc++abi on OS X. 2015-10-05 19:28:48 +00:00
libc++sjlj-abi.exp on Darwin re-export C++0x type infos 2011-05-24 20:26:04 +00:00
libc++unexp.exp Effort to reduce the number of exported symbols 2010-12-17 14:46:43 +00:00
notweak.exp
weak.exp Fix <rdar://problem/10136825> 2011-10-04 23:11:56 +00:00