aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3/include/std/regex
diff options
context:
space:
mode:
authorTim Shen <timshen@google.com>2015-01-19 22:56:04 +0000
committerTim Shen <timshen@gcc.gnu.org>2015-01-19 22:56:04 +0000
commit60c176fb459c7780f9cb711e2427e41dca12a54a (patch)
tree2a1f4b55f298c9c15782b158f20da48a36995d76 /libstdc++-v3/include/std/regex
parentb151091dca19708ce7b51fcdf4fffd4b45a831c5 (diff)
downloadgcc-60c176fb459c7780f9cb711e2427e41dca12a54a.zip
gcc-60c176fb459c7780f9cb711e2427e41dca12a54a.tar.gz
gcc-60c176fb459c7780f9cb711e2427e41dca12a54a.tar.bz2
re PR libstdc++/64584 (basic_regex::assign breaks *this if it throws regex_error)
PR libstdc++/64584 PR libstdc++/64585 * include/bits/regex.h (basic_regex<>::basic_regex, basic_regex<>::assign, basic_regex<>::imbue, basic_regex<>::swap, basic_regex<>::mark_count): Drop NFA after imbuing basic_regex; Make assign() transactional against exception. * include/bits/regex_compiler.h (__compile_nfa<>): Add back __compile_nfa SFINAE. * include/std/regex: Adjust include order to avoid __compile_nfa forward declaration. * testsuite/28_regex/basic_regex/assign/char/string.cc: New testcase. * testsuite/28_regex/basic_regex/imbue/string.cc: New testcase. From-SVN: r219865
Diffstat (limited to 'libstdc++-v3/include/std/regex')
-rw-r--r--libstdc++-v3/include/std/regex2
1 files changed, 1 insertions, 1 deletions
diff --git a/libstdc++-v3/include/std/regex b/libstdc++-v3/include/std/regex
index 4d0e93c..3dff372 100644
--- a/libstdc++-v3/include/std/regex
+++ b/libstdc++-v3/include/std/regex
@@ -56,9 +56,9 @@
#include <bits/regex_constants.h>
#include <bits/regex_error.h>
#include <bits/regex_automaton.h>
-#include <bits/regex.h>
#include <bits/regex_scanner.h>
#include <bits/regex_compiler.h>
+#include <bits/regex.h>
#include <bits/regex_executor.h>
#endif // C++11