http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47269
--- Comment #3 from Mike Stump <mikestump at comcast dot net> 2011-02-06 01:31:52 UTC --- If I understand what they intend, though, the documentation isn't clear on this point: %{!gtoggle: %{gdwarf-2:%{!gstabs*:%{!g0: -idsym}}}\ %{.c|.cc|.C|.cpp|.cp|.c++|.cxx|.CPP|.m|.mm: \ %{gdwarf-2:%{!gstabs*:%{!g0: -dsym}}}} } %(gtoggle: %{!gdwarf-2:%{!gstabs*:%{!g0: -idsym}}}\ %{.c|.cc|.C|.cpp|.cp|.c++|.cxx|.CPP|.m|.mm: \ %{!gdwarf-2:%{!gstabs*:%{!g0: -dsym}}}} } that said, I'd have the explain in detail exactly what happens with -g0 and -gstabs. You'd have to check to {} nesting to make sure I the } at the very end is right.