This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFA PATCH] Enable -Wpointer-sign by default.
- From: Pedro Alves <palves at redhat dot com>
- To: Eli Zaretskii <eliz at gnu dot org>
- Cc: gdb-patches at sourceware dot org
- Date: Fri, 19 Apr 2013 19:36:28 +0100
- Subject: Re: [RFA PATCH] Enable -Wpointer-sign by default.
- References: <20130419175932 dot 13401 dot 30699 dot stgit at brno dot lan> <83li8e1j3q dot fsf at gnu dot org>
On 04/19/2013 07:16 PM, Eli Zaretskii wrote:
> I'd use "defaults" instead of "choices".
Done.
> As for "other compilers": do other compilers really have, or are
> likely to have, options that are named like that? If not, I suggest
> to delete the part in the parentheses.
Yes, clang/llvm has it.
> OK with those changes.
Thanks. I've applied it.
---------------
Subject: Enable -Wpointer-sign by default.
This enables -Wpointer-sign by default.
I've checked that --enable-targets=all builds fine with the following
as --host, on x86_64 Fedora 17 --build:
x86_64 GNU/Linux
i386 GNU/Linux
i386 MinGW-w64
i386 msdos/djgpp
gdb/
2013-04-19 Pedro Alves <palves@redhat.com>
* configure.ac (build_warnings): Replace -Wno-pointer-sign with
-Wpointer-sign.
* configure: Regenerate.
gdb/doc
2013-04-19 Pedro Alves <palves@redhat.com>
* gdbint.texinfo (Misc Guidelines) <Compiler Warnings>: Replace
-Wno-pointer-sign text with text on -Wpointer-sign.
---
gdb/configure | 2 +-
gdb/configure.ac | 2 +-
gdb/doc/gdbint.texinfo | 13 ++++++-------
3 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/gdb/configure b/gdb/configure
index f9d9a17..c8f3f1f 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -12452,7 +12452,7 @@ fi
# NOTE: If you change this list, remember to update
# gdb/doc/gdbint.texinfo.
build_warnings="-Wall -Wdeclaration-after-statement -Wpointer-arith \
--Wformat-nonliteral -Wno-pointer-sign \
+-Wformat-nonliteral -Wpointer-sign \
-Wno-unused -Wunused-value -Wunused-function \
-Wno-switch -Wno-char-subscripts -Wmissing-prototypes \
-Wdeclaration-after-statement -Wempty-body"
diff --git a/gdb/configure.ac b/gdb/configure.ac
index ce6fa7a..884b40e 100644
--- a/gdb/configure.ac
+++ b/gdb/configure.ac
@@ -1925,7 +1925,7 @@ fi
# NOTE: If you change this list, remember to update
# gdb/doc/gdbint.texinfo.
build_warnings="-Wall -Wdeclaration-after-statement -Wpointer-arith \
--Wformat-nonliteral -Wno-pointer-sign \
+-Wformat-nonliteral -Wpointer-sign \
-Wno-unused -Wunused-value -Wunused-function \
-Wno-switch -Wno-char-subscripts -Wmissing-prototypes \
-Wdeclaration-after-statement -Wempty-body"
diff --git a/gdb/doc/gdbint.texinfo b/gdb/doc/gdbint.texinfo
index 4a75c26..34e75e2 100644
--- a/gdb/doc/gdbint.texinfo
+++ b/gdb/doc/gdbint.texinfo
@@ -6339,13 +6339,12 @@ Since @value{GDBN} uses the @code{format printf} attribute on all
@code{printf} like functions this checks not just @code{printf} calls
but also calls to functions such as @code{fprintf_unfiltered}.
-@item -Wno-pointer-sign
-In version 4.0, GCC began warning about pointer argument passing or
-assignment even when the source and destination differed only in
-signedness. However, most @value{GDBN} code doesn't distinguish
-carefully between @code{char} and @code{unsigned char}. In early 2006
-the @value{GDBN} developers decided correcting these warnings wasn't
-worth the time it would take.
+@item -Wpointer-sign
+This helps make sure @value{GDBN} code uses @code{gdb_byte} which is
+really @code{unsigned char} for raw bytes instead of @code{char},
+whose signness is host-dependent. @sc{gcc} enables this with
+@code{-Wall} since version 4.0. We enable it explicitly too to be
+decoupled from future @sc{gcc} (or other compiler)'s defaults.
@item -Wno-unused-parameter
Due to the way that @value{GDBN} is implemented many functions have