Handle lack of <bits/c++config.h> and <bits/functexcept.h>
authorPeter Griess <pgriess@fb.com>
Tue, 26 Nov 2013 20:12:14 +0000 (12:12 -0800)
committerJordan DeLong <jdelong@fb.com>
Fri, 20 Dec 2013 21:08:11 +0000 (13:08 -0800)
commit708be4fcfe5c4c985b879cf8a3b1a36c6c9c6626
tree2e84f39ff82c8ee718e56d27ce4e9b6a117f7aac
parent3bde358c1846b139149027a66b0c593ed21800ec
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.
- This is another attempt at D1074481.

Test Plan: .

Reviewed By: andrei.alexandrescu@fb.com

FB internal diff: D1074723
folly/FBString.h
folly/Makefile.am
folly/Malloc.h
folly/Portability.h
folly/Range.h
folly/Traits.h
folly/configure.ac
folly/detail/FunctionalExcept.cpp [new file with mode: 0644]
folly/detail/FunctionalExcept.h [new file with mode: 0644]