Commit 4a78b42b authored by Christopher Dykes's avatar Christopher Dykes Committed by Facebook Github Bot

Don't assume standard library types are relocatable

Summary: Although currently the only one of these that isn't relocatable is `std::string`, making assumptions about the standard library is a terrible idea, so disable all of them.

Reviewed By: yfeldblum

Differential Revision: D4186024

fbshipit-source-id: 4d2a54d232df0cb05959a8d9cb1a2d2cf34d1302
parent 8d04c404
......@@ -578,6 +578,8 @@ constexpr initlist_construct_t initlist_construct{};
} // namespace folly
// Assume nothing when compiling with MSVC.
#ifndef _MSC_VER
// gcc-5.0 changed string's implementation in libgcc to be non-relocatable
#if __GNUC__ < 5
FOLLY_ASSUME_FBVECTOR_COMPATIBLE_3(std::basic_string)
......@@ -591,6 +593,7 @@ FOLLY_ASSUME_FBVECTOR_COMPATIBLE_1(std::function)
// Boost
FOLLY_ASSUME_FBVECTOR_COMPATIBLE_1(boost::shared_ptr)
#endif
#define FOLLY_CREATE_HAS_MEMBER_TYPE_TRAITS(classname, type_name) \
template <typename T> \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment