| |
| // Copyright 2005-2009 Daniel James. |
| // Distributed under the Boost Software License, Version 1.0. (See accompanying |
| // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) |
| |
| #include "./config.hpp" |
| |
| #include <boost/functional/detail/container_fwd.hpp> |
| |
| #if BOOST_WORKAROUND(__GNUC__, < 3) && \ |
| !defined(__SGI_STL_PORT) && !defined(_STLPORT_VERSION) |
| template <class charT, class Allocator> |
| static void test( |
| std::basic_string<charT, std::string_char_traits<charT>, Allocator> const&) |
| { |
| } |
| #else |
| template <class charT, class Allocator> |
| static void test( |
| std::basic_string<charT, std::char_traits<charT>, Allocator> const&) |
| { |
| } |
| #endif |
| |
| template <class T, class Allocator> |
| static void test(std::deque<T, Allocator> const&) |
| { |
| } |
| |
| template <class T, class Allocator> |
| static void test(std::list<T, Allocator> const&) |
| { |
| } |
| |
| template <class T, class Allocator> |
| static void test(std::vector<T, Allocator> const&) |
| { |
| } |
| |
| template <class Key, class T, class Compare, class Allocator> |
| static void test(std::map<Key, T, Compare, Allocator> const&) |
| { |
| } |
| |
| template <class Key, class T, class Compare, class Allocator> |
| static void test(std::multimap<Key, T, Compare, Allocator> const&) |
| { |
| } |
| |
| template <class Key, class Compare, class Allocator> |
| static void test(std::set<Key, Compare, Allocator> const&) |
| { |
| } |
| |
| template <class Key, class Compare, class Allocator> |
| static void test(std::multiset<Key, Compare, Allocator> const&) |
| { |
| } |
| |
| template <std::size_t N> |
| static void test(std::bitset<N> const&) |
| { |
| } |
| |
| template <class T> |
| static void test(std::complex<T> const&) |
| { |
| } |
| |
| template <class X, class Y> |
| static void test(std::pair<X, Y> const&) |
| { |
| } |
| |
| #include <deque> |
| #include <list> |
| #include <vector> |
| #include <map> |
| #include <set> |
| #include <bitset> |
| #include <string> |
| #include <complex> |
| #include <utility> |
| |
| int main() |
| { |
| std::deque<int> x1; |
| std::list<std::string> x2; |
| std::vector<float> x3; |
| std::vector<bool> x4; |
| std::map<int, int> x5; |
| std::multimap<float, int*> x6; |
| std::set<std::string> x7; |
| std::multiset<std::vector<int> > x8; |
| std::bitset<10> x9; |
| std::string x10; |
| std::complex<double> x11; |
| std::pair<std::list<int>, char***> x12; |
| |
| test(x1); |
| test(x2); |
| test(x3); |
| test(x4); |
| test(x5); |
| test(x6); |
| test(x7); |
| test(x8); |
| test(x9); |
| test(x10); |
| test(x11); |
| test(x12); |
| |
| return 0; |
| } |