Files
gcc/libstdc++-v3/include
Jonathan Wakely 52e2bcbd93 libstdc++: Use constexpr-if to slightly simplify <regex>
This will hardly make a dent in the very slow compile times for <regex>
but it seems worth doing anyway.

libstdc++-v3/ChangeLog:

	* include/bits/regex_compiler.h: Replace _GLIBCXX17_CONSTEXPR
	with constexpr and disable diagnostics with pragmas.
	(_AnyMatcher::operator()): Use constexpr-if instead of tag
	dispatching. Postpone calls to _M_translate until after checking
	result of earlier calls.
	(_AnyMatcher::_M_apply): Remove both overloads.
	(_BracketMatcher::operator(), _BracketMatcher::_M_ready):
	Replace tag dispatching with 'if constexpr'.
	(_BracketMatcher::_M_apply(_CharT, true_type)): Remove.
	(_BracketMatcher::_M_apply(_CharT, false_type)): Remove second
	parameter.
	(_BracketMatcher::_M_make_cache): Remove both overloads.
	* include/bits/regex_compiler.tcc (_BracketMatcher::_M_apply):
	Remove second parameter.
	* include/bits/regex_executor.tcc: Replace _GLIBCXX17_CONSTEXPR
	with constexpr and disable diagnostics with pragmas.
	(_Executor::_M_handle_backref): Replace __glibcxx_assert with
	static_assert.
	(_Executor::_M_handle_accept): Mark _S_opcode_backref case as
	unreachable for non-DFS mode and do not instantiate
	_M_handle_backref for that case.

Reviewed-by: Tomasz Kamiński <tkaminsk@redhat.com>
2025-04-29 19:54:35 +01:00
..
2025-01-02 11:59:57 +01:00
2025-01-02 11:59:57 +01:00
2025-01-02 11:59:57 +01:00
2025-01-02 11:59:57 +01:00
2025-01-02 11:59:57 +01:00
2025-01-02 11:59:57 +01:00
2025-01-02 11:59:57 +01:00