regex_automaton.h (__detail::_State): Split non-dependent parts into new _State_base.
authorJonathan Wakely <jwakely.gcc@gmail.com>
Fri, 8 Nov 2013 14:30:22 +0000 (14:30 +0000)
committerJonathan Wakely <redi@gcc.gnu.org>
Fri, 8 Nov 2013 14:30:22 +0000 (14:30 +0000)
commit7d9d218516ac5f1004d1b5aef427d11bea1a242c
treee51501c90c11733c031c148577d0f0cfcc4a7985
parentcb3d1e3e87f97eca6c52f7f49d2218e24c6ec39e
regex_automaton.h (__detail::_State): Split non-dependent parts into new _State_base.

* include/bits/regex_automaton.h (__detail::_State): Split
non-dependent parts into new _State_base.
(__detail::_NFA): Likewise for _NFA_base. Use std::move() to avoid
copies when inserting _MatcherT and _StateT objects.
* include/bits/regex_automaton.tcc: Move member definitions to base
class. Qualify dependent names.
* include/bits/regex_compiler.h (__detail::_Compiler::_M_get_nfa): Make
non-const and use std::move to avoid copying.
* include/bits/regex_compiler.tcc: Likewise.
* include/bits/regex_executor.h (__detail::_Executor::_M_is_word): Use
array, so past-the-end iterator is valid.

From-SVN: r204571
libstdc++-v3/ChangeLog
libstdc++-v3/include/bits/regex_automaton.h
libstdc++-v3/include/bits/regex_automaton.tcc
libstdc++-v3/include/bits/regex_compiler.h
libstdc++-v3/include/bits/regex_compiler.tcc
libstdc++-v3/include/bits/regex_executor.h