The following adds RejectNegative to the gdwarf, gdwarf-, ggdb and gvms
options since the current behavior is to treat the negative variant
the same as the positive variant. In particular -ggdb -gno-gdb
do not cancel, and plain -gno-dwarf will enable (dwarf!) debug output.
Rejecting the negative forms avoids interpreting sensible behavior
to combinations of options like -gdwarf-5 -gno-dwarf-3 and sticks to
the behavior that later -g options simply override earlier ones and
the only negative form is -g0.
Bootstrapped and tested on x86_64-unknown-linux-gnu, OK?
Thanks,
Richard.
* common.opt (gdwarf): Add RejectNegative.
(gdwarf-): Likewise.
(ggdb): Likewise.
(gvms): Likewise.
---
gcc/common.opt | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/gcc/common.opt b/gcc/common.opt
index e558385c7f4..4546acb5b81 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -3349,11 +3349,11 @@ Common Driver RejectNegative JoinedOrMissing
Generate BTF debug information at default level.
gdwarf
-Common Driver JoinedOrMissing Negative(gdwarf-)
+Common Driver JoinedOrMissing Negative(gdwarf-) RejectNegative
Generate debug information in default version of DWARF format.
gdwarf-
-Common Driver Joined UInteger Var(dwarf_version) Init(DWARF_VERSION_DEFAULT)
+Common Driver Joined UInteger Var(dwarf_version) Init(DWARF_VERSION_DEFAULT)
RejectNegative
Generate debug information in DWARF v2 (or later) format.
gdwarf32
@@ -3365,7 +3365,7 @@ Common Driver Var(dwarf_offset_size,8) RejectNegative
Use 64-bit DWARF format when emitting DWARF debug information.
ggdb
-Common Driver JoinedOrMissing
+Common Driver JoinedOrMissing RejectNegative
Generate debug information in default extended format.
ginline-points
@@ -3432,7 +3432,7 @@ gvariable-location-views=incompat5
Common Driver RejectNegative Var(debug_variable_location_views, -1) Init(2)
gvms
-Common Driver JoinedOrMissing
+Common Driver JoinedOrMissing RejectNegative
Generate debug information in VMS format.
gxcoff
--
2.35.3