Handle lack of <bits/c++config.h> and <bits/functexcept.h>
authorPeter Griess <pgriess@fb.com>
Wed, 25 Sep 2013 23:49:10 +0000 (18:49 -0500)
committerPeter Griess <pgriess@fb.com>
Tue, 26 Nov 2013 15:05:18 +0000 (07:05 -0800)
commit758e4c7773f067231bec9739caac165dde9442f9
tree27865929a9fe8360dd4ccb193443a629fe6007da
parent23123a0166bd33ce56d1cbea778bdfacf746e7d7
Handle lack of <bits/c++config.h> and <bits/functexcept.h>

Summary:
- Clang's libc++ doesn't provide these header files. Detect libc++ via
the _LIBCPP_VERSION symbol (pulling it in by sourcing some header
files earlier if necessary) and avoid using these files.

Test Plan:
- fbconfig -r folly && fbmake runtests
- ./configure && make check on Ubuntu/FC/Mac

Reviewed By: andrewjcg@fb.com

FB internal diff: D998595
folly/FBString.h
folly/Malloc.h
folly/Range.h
folly/Traits.h