Tested powerpc64le-linux, pushed to trunk. -- >8 --
This fixes a false positive warning seen with LTO: 12/bits/regex_compiler.tcc:443:32: error: '__last_char._M_char' may be used uninitialized [-Werror=maybe-uninitialized] Given that the std::regex code is not very efficient anyway, the overhead of initializing this byte should be minimal. libstdc++-v3/ChangeLog: PR middle-end/103984 * include/bits/regex_compiler.h (_BracketMatcher::_M_char): Use default member initializer. --- libstdc++-v3/include/bits/regex_compiler.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libstdc++-v3/include/bits/regex_compiler.h b/libstdc++-v3/include/bits/regex_compiler.h index 174aefe75f7..348c170c81a 100644 --- a/libstdc++-v3/include/bits/regex_compiler.h +++ b/libstdc++-v3/include/bits/regex_compiler.h @@ -125,7 +125,7 @@ namespace __detail struct _BracketState { enum class _Type : char { _None, _Char, _Class } _M_type = _Type::_None; - _CharT _M_char; + _CharT _M_char = _CharT(); void set(_CharT __c) noexcept { _M_type = _Type::_Char; _M_char = __c; } -- 2.34.1