The following makes lto-wrapper deal with non-combined debug disabling / enabling option combinations properly. Interestingly -gno-dwarf also enables debug.
Bootstrap / regtest running on x86_64-unknown-linux-gnu. OK? Or do we want to try harder to zap earlier -g0 when later -g* appear? PR lto/109263 * lto-wrapper.c (run_gcc): Parse alternate debug options as well, they always enable debug. --- gcc/lto-wrapper.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gcc/lto-wrapper.cc b/gcc/lto-wrapper.cc index fe8c5f6e80d..5186d040ce0 100644 --- a/gcc/lto-wrapper.cc +++ b/gcc/lto-wrapper.cc @@ -1564,6 +1564,16 @@ run_gcc (unsigned argc, char *argv[]) skip_debug = option->arg && !strcmp (option->arg, "0"); break; + case OPT_gbtf: + case OPT_gctf: + case OPT_gdwarf: + case OPT_gdwarf_: + case OPT_ggdb: + case OPT_gvms: + /* Negative forms, if allowed, enable debug info as well. */ + skip_debug = false; + break; + case OPT_dumpdir: incoming_dumppfx = dumppfx = option->arg; break; -- 2.35.3