Do not set yydebug in cp-name-parser.y

This reverts the change to cp-name-parser.y, avoiding a TSan report.

Approved-By: Simon Marchi <simon.marchi@efficios.com>
This commit is contained in:
Tom Tromey
2025-05-03 11:28:22 -06:00
parent 5479d3d404
commit 1edb555c59

View File

@@ -2047,9 +2047,11 @@ cp_demangled_name_to_comp (const char *demangled_name,
auto result = std::make_unique<demangle_parse_info> ();
cpname_state state (demangled_name, result.get ());
scoped_restore restore_yydebug = make_scoped_restore (&yydebug,
parser_debug);
/* Note that we can't set yydebug here, as is done in the other
parsers. Bison implements yydebug as a global, even with a pure
parser, and this parser is run from worker threads. So, changing
yydebug causes TSan reports. If you need to debug this parser,
debug gdb and set the global from the outer gdb. */
if (yyparse (&state))
{
if (state.global_errmsg && errmsg)