aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2020-06-23 12:20:26 +0100
committerJonathan Wakely <jwakely@redhat.com>2020-06-23 12:20:26 +0100
commitb81d4f1e3d6a519afa20d84304f12ee639fde944 (patch)
tree0ecfcd7e0ec14dc1ba22da0c4e2d582b3be52f12
parentefc16503ca10bc0e934e0bace5777500e4dc757a (diff)
downloadgcc-b81d4f1e3d6a519afa20d84304f12ee639fde944.zip
gcc-b81d4f1e3d6a519afa20d84304f12ee639fde944.tar.gz
gcc-b81d4f1e3d6a519afa20d84304f12ee639fde944.tar.bz2
libstdc++: Adjust std::from_chars negative tests
Also test with an enumeration type. Move the dg-error directives outside the #if block, because DejaGnu would process them whether or not wchar_t support is present. libstdc++-v3/ChangeLog: * testsuite/20_util/from_chars/1_c++20_neg.cc: Check enumeration type. * testsuite/20_util/from_chars/1_neg.cc: Likewise. Move dg-error directives outside preprocessor condition.
-rw-r--r--libstdc++-v3/testsuite/20_util/from_chars/1_c++20_neg.cc3
-rw-r--r--libstdc++-v3/testsuite/20_util/from_chars/1_neg.cc8
2 files changed, 10 insertions, 1 deletions
diff --git a/libstdc++-v3/testsuite/20_util/from_chars/1_c++20_neg.cc b/libstdc++-v3/testsuite/20_util/from_chars/1_c++20_neg.cc
index 8a73b2d..8454b30 100644
--- a/libstdc++-v3/testsuite/20_util/from_chars/1_c++20_neg.cc
+++ b/libstdc++-v3/testsuite/20_util/from_chars/1_c++20_neg.cc
@@ -35,6 +35,9 @@ test01(const char* first, const char* last)
char32_t c32;
std::from_chars(first, last, c32); // { dg-error "no matching" }
std::from_chars(first, last, c32, 10); // { dg-error "no matching" }
+ enum E { } e;
+ std::from_chars(first, last, e); // { dg-error "no matching" }
+ std::from_chars(first, last, e, 10); // { dg-error "no matching" }
}
// { dg-prune-output "enable_if" }
diff --git a/libstdc++-v3/testsuite/20_util/from_chars/1_neg.cc b/libstdc++-v3/testsuite/20_util/from_chars/1_neg.cc
index 3f46b7e..12b5e59 100644
--- a/libstdc++-v3/testsuite/20_util/from_chars/1_neg.cc
+++ b/libstdc++-v3/testsuite/20_util/from_chars/1_neg.cc
@@ -25,9 +25,11 @@ test01(const char* first, const char* last)
{
#if _GLIBCXX_USE_WCHAR_T
wchar_t wc;
+#else
+ enum W { } wc;
+#endif
std::from_chars(first, last, wc); // { dg-error "no matching" }
std::from_chars(first, last, wc, 10); // { dg-error "no matching" }
-#endif
char16_t c16;
std::from_chars(first, last, c16); // { dg-error "no matching" }
@@ -35,6 +37,10 @@ test01(const char* first, const char* last)
char32_t c32;
std::from_chars(first, last, c32); // { dg-error "no matching" }
std::from_chars(first, last, c32, 10); // { dg-error "no matching" }
+
+ enum E { } e;
+ std::from_chars(first, last, e); // { dg-error "no matching" }
+ std::from_chars(first, last, e, 10); // { dg-error "no matching" }
}
// { dg-prune-output "enable_if" }