Unordered: Fix complex type for gcc's standard library. Fixes #6139.

I haven't had any confirmation, but I assume this fixes the problem.


[SVN r75909]
This commit is contained in:
Daniel James
2011-12-11 21:43:01 +00:00
parent 469b547c88
commit 9436535318
2 changed files with 10 additions and 7 deletions

View File

@@ -42,6 +42,10 @@
|| defined(_GLIBCXX_PARALLEL) \ || defined(_GLIBCXX_PARALLEL) \
|| defined(_GLIBCXX_PROFILE) || defined(_GLIBCXX_PROFILE)
# define BOOST_DETAIL_NO_CONTAINER_FWD # define BOOST_DETAIL_NO_CONTAINER_FWD
# else
# if defined(__GLIBCXX__) && __GLIBCXX__ >= 20040530
# define BOOST_CONTAINER_FWD_COMPLEX_STRUCT
# endif
# endif # endif
# elif defined(__STL_CONFIG_H) # elif defined(__STL_CONFIG_H)
// generic SGI STL // generic SGI STL
@@ -63,8 +67,6 @@
# elif (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER) # elif (defined(_YVALS) && !defined(__IBMCPP__)) || defined(_CPPLIB_VER)
// Dinkumware Library (this has to appear after any possible replacement // Dinkumware Library (this has to appear after any possible replacement
// libraries) // libraries)
//
// Works fine.
# else # else
# define BOOST_DETAIL_NO_CONTAINER_FWD # define BOOST_DETAIL_NO_CONTAINER_FWD
# endif # endif
@@ -117,11 +119,11 @@ namespace std
template <class charT> struct char_traits; template <class charT> struct char_traits;
#endif #endif
#if BOOST_CLANG #if defined(BOOST_CONTAINER_FWD_COMPLEX_STRUCT)
template <class T> struct complex; template <class T> struct complex;
#else #else
template <class T> class complex; template <class T> class complex;
#endif #endif
#if !defined(BOOST_CONTAINER_FWD_BAD_DEQUE) #if !defined(BOOST_CONTAINER_FWD_BAD_DEQUE)
template <class T, class Allocator> class deque; template <class T, class Allocator> class deque;

View File

@@ -11,6 +11,7 @@ project detail/test/container_fwd
<toolset>intel:<warnings>on <toolset>intel:<warnings>on
<toolset>gcc:<cxxflags>"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion" <toolset>gcc:<cxxflags>"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion"
<toolset>darwin:<cxxflags>"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion" <toolset>darwin:<cxxflags>"-pedantic -Wstrict-aliasing -fstrict-aliasing -Wextra -Wsign-promo -Wunused-parameter -Wconversion"
<toolset>clang:<cxxflags>"-pedantic -Wextra -Wmismatched-tags"
<warnings-as-errors>on <warnings-as-errors>on
; ;