Migrating folly to gcc-4.7.1
authorNicholas Ormrod <njormrod@fb.com>
Fri, 11 Oct 2013 22:33:07 +0000 (15:33 -0700)
committerSara Golemon <sgolemon@fb.com>
Thu, 24 Oct 2013 21:53:41 +0000 (14:53 -0700)
Summary:
folly/PLATFORM is the last fbcode platform on gcc-4.6.2.

Before pushing, I ran arc unit from my devserver (see Test Plan).
Phabricator's test run has a lot of aborted test cases, which are
indicative of a failing test framework. Arc unit had been
intermittently broken when running my own tests. Overriding
Phabricator's unit test failures:
@override-unit-failures

Test Plan:
(1) fbconfig -r folly/ -- build and runtsts in dbg and opt.

Everything is passing.

(2) arc unit, look at each failed result

Some builds/tests are failing. Most seem unrelated. Of the rest, one is
also failing on master, and the others did not fail during a second run.

Reviewed By: andrei.alexandrescu@fb.com

FB internal diff: D1005889

folly/FBString.h

index c99bb4ad6cd1c85c51dd27ead16927f069601347..bde4e73501dbc681964269745e44d2f3f293fac3 100644 (file)
 #pragma GCC diagnostic push
 #pragma GCC diagnostic ignored "-Wshadow"
 
+// FBString cannot use throw when replacing std::string, though it may still
+// use std::__throw_*
+#define throw
+
 #ifdef _LIBSTDCXX_FBSTRING
 namespace std _GLIBCXX_VISIBILITY(default) {
 _GLIBCXX_BEGIN_NAMESPACE_VERSION
@@ -2422,6 +2426,7 @@ struct hash< ::folly::fbstring> {
 #endif // _LIBSTDCXX_FBSTRING
 
 #undef FBSTRING_DISABLE_ADDRESS_SANITIZER
+#undef throw
 #undef FBSTRING_LIKELY
 #undef FBSTRING_UNLIKELY