Compiling libcxx with gcc 4.6.4 (MingW) produces these errors:
type_traits:3280:31: error: expected primary-expression before 'decltype' type_traits:3280:29: error: expected ';' at end of member declaration memory:2415:49: error: function 'std::__1::default_delete<_Tp>::default_delete()' defaulted on its first declaration must not have an exception-specification memory:2435:49: error: function 'std::__1::default_delete<_Tp []>::default_delete()' defaulted on its first declaration must not have an exception-specification The attached patch defines _LIBCPP_HAS_NO_ADVANCED_SFINAE and _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS for gcc version < 4.7, making the library compile with gcc 4.6.4. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@195431 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -389,9 +389,7 @@ namespace std {
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if _GNUC_VER < 404
|
#if _GNUC_VER < 404
|
||||||
#define _LIBCPP_HAS_NO_ADVANCED_SFINAE
|
|
||||||
#define _LIBCPP_HAS_NO_DECLTYPE
|
#define _LIBCPP_HAS_NO_DECLTYPE
|
||||||
#define _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
|
|
||||||
#define _LIBCPP_HAS_NO_DELETED_FUNCTIONS
|
#define _LIBCPP_HAS_NO_DELETED_FUNCTIONS
|
||||||
#define _LIBCPP_HAS_NO_UNICODE_CHARS
|
#define _LIBCPP_HAS_NO_UNICODE_CHARS
|
||||||
#define _LIBCPP_HAS_NO_VARIADICS
|
#define _LIBCPP_HAS_NO_VARIADICS
|
||||||
@@ -402,6 +400,11 @@ namespace std {
|
|||||||
#define _LIBCPP_HAS_NO_NULLPTR
|
#define _LIBCPP_HAS_NO_NULLPTR
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#if _GNUC_VER < 407
|
||||||
|
#define _LIBCPP_HAS_NO_ADVANCED_SFINAE
|
||||||
|
#define _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif // __GXX_EXPERIMENTAL_CXX0X__
|
#endif // __GXX_EXPERIMENTAL_CXX0X__
|
||||||
|
|
||||||
#define _LIBCPP_BEGIN_NAMESPACE_STD namespace std { namespace _LIBCPP_NAMESPACE {
|
#define _LIBCPP_BEGIN_NAMESPACE_STD namespace std { namespace _LIBCPP_NAMESPACE {
|
||||||
|
Reference in New Issue
Block a user