summaryrefslogtreecommitdiff
path: root/libstdc++-v3/testsuite
diff options
context:
space:
mode:
authorredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-02 22:13:18 +0000
committerredi <redi@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-02 22:13:18 +0000
commitfb5507b27f560acd7f596e733286f21716cb1c25 (patch)
tree1affca557232ead195c856d7cc9683a019e03b66 /libstdc++-v3/testsuite
parent03a9188340bc67e1465b9bacb21b59c5256adcd9 (diff)
downloadgcc-fb5507b27f560acd7f596e733286f21716cb1c25.tar.gz
Fix tests that fail with old std::string
* testsuite/21_strings/basic_string/allocator/char/minimal.cc: Guard explicit instantiation with check for new ABI. * testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc: Likewise. Use wchar_t as char_type. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@228435 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libstdc++-v3/testsuite')
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/minimal.cc8
-rw-r--r--libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc9
2 files changed, 10 insertions, 7 deletions
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/minimal.cc b/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/minimal.cc
index 4bfd4cabe42..d8dbb002977 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/minimal.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/allocator/char/minimal.cc
@@ -22,25 +22,27 @@
#include <testsuite_hooks.h>
#include <testsuite_allocator.h>
+#if _GLIBCXX_USE_CXX11_ABI
using C = char;
const C c = 'a';
using traits = std::char_traits<C>;
using __gnu_test::SimpleAllocator;
-template class std::basic_string<C,traits, SimpleAllocator<C>>;
+template class std::basic_string<C, traits, SimpleAllocator<C>>;
void test01()
{
-#if _GLIBCXX_USE_CXX11_ABI
typedef SimpleAllocator<C> alloc_type;
typedef std::allocator_traits<alloc_type> traits_type;
typedef std::basic_string<C, traits, alloc_type> test_type;
test_type v(alloc_type{});
v.assign(1, c);
v.assign(100, c);
-#endif
}
+#else
+void test01() { }
+#endif
int main()
{
diff --git a/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc b/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc
index bfba87cc76b..713e0302ef6 100644
--- a/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc
+++ b/libstdc++-v3/testsuite/21_strings/basic_string/allocator/wchar_t/minimal.cc
@@ -22,7 +22,8 @@
#include <testsuite_hooks.h>
#include <testsuite_allocator.h>
-using C = char;
+#if _GLIBCXX_USE_CXX11_ABI && defined(_GLIBCXX_USE_WCHAR_T)
+using C = wchar_t;
const C c = 'a';
using traits = std::char_traits<C>;
@@ -32,18 +33,18 @@ template class std::basic_string<C,traits, SimpleAllocator<C>>;
void test01()
{
-#if _GLIBCXX_USE_CXX11_ABI && defined(_GLIBCXX_USE_WCHAR_T)
typedef SimpleAllocator<C> alloc_type;
typedef std::allocator_traits<alloc_type> traits_type;
typedef std::basic_string<C, traits, alloc_type> test_type;
test_type v(alloc_type{});
v.assign(1, c);
v.assign(100, c);
-#endif
}
+#else
+void test01() { }
+#endif
int main()
{
test01();
- return 0;
}