Add new GCC 9 warnings to warnings.m4

Message ID 20190510154228.22889-1-tromey@adacore.com
State New
Headers show
Series
  • Add new GCC 9 warnings to warnings.m4
Related show

Commit Message

Tom Tromey May 10, 2019, 3:42 p.m.
GCC 9 has a few new warnings that aren't enabled in the gdb build by
default: -Wdeprecated-copy, -Winit-list-lifetime, and
-Wredundant-move.  This patch enables them all.

Tested by rebuilding with a new GCC (git master) on x86-64 Fedora 29.

gdb/ChangeLog
2019-05-10  Tom Tromey  <tromey@adacore.com>

	* configure: Rebuild.
	* warning.m4 (AM_GDB_WARNINGS): Add -Wdeprecated-copy,
	-Winit-list-lifetime, -Wredundant-move.

gdb/gdbserver/ChangeLog
2019-05-10  Tom Tromey  <tromey@adacore.com>

	* configure: Rebuild.
---
 gdb/ChangeLog           | 6 ++++++
 gdb/configure           | 5 ++++-
 gdb/gdbserver/ChangeLog | 4 ++++
 gdb/gdbserver/configure | 5 ++++-
 gdb/warning.m4          | 5 ++++-
 5 files changed, 22 insertions(+), 3 deletions(-)

-- 
2.20.1

Comments

Tom Tromey May 29, 2019, 2:17 p.m. | #1
>>>>> "Tom" == Tom Tromey <tromey@adacore.com> writes:


Tom> GCC 9 has a few new warnings that aren't enabled in the gdb build by
Tom> default: -Wdeprecated-copy, -Winit-list-lifetime, and
Tom> -Wredundant-move.  This patch enables them all.

I was going to land this today, but when reading the GCC 9 changes page:

    https://gcc.gnu.org/gcc-9/changes.html

... I noticed that -Winit-list-lifetime is enabled by default, and also
that I'd missed -Wdeprecated-copy-dtor before.

Here is v2 of the patch, which makes the appropriate changes.  In this
case one patch to the code was needed.

Tom

commit 260ad5fd3217d3df22c9771842f8863484f74e0e
Author: Tom Tromey <tromey@adacore.com>
Date:   Fri May 10 09:25:19 2019 -0600

    Add new GCC 9 warnings to warnings.m4
    
    GCC 9 has a few new warnings that aren't enabled in the gdb build by
    default: -Wdeprecated-copy, -Wdeprecated-copy-dtor, and
    -Wredundant-move.  This patch enables them all.
    
    Tested by rebuilding with a new GCC (git master) on x86-64 Fedora 29.
    
    gdb/ChangeLog
    2019-05-29  Tom Tromey  <tromey@adacore.com>
    
            * inflow.c (struct terminal_info): Add default operator=.
            * configure: Rebuild.
            * warning.m4 (AM_GDB_WARNINGS): Add -Wdeprecated-copy,
            -Wdeprecated-copy-dtor, -Wredundant-move.
    
    gdb/gdbserver/ChangeLog
    2019-05-29  Tom Tromey  <tromey@adacore.com>
    
            * configure: Rebuild.

diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index f122f5b21f5..e67c92b2054 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2019-05-29  Tom Tromey  <tromey@adacore.com>
+
+	* inflow.c (struct terminal_info): Add default operator=.
+	* configure: Rebuild.
+	* warning.m4 (AM_GDB_WARNINGS): Add -Wdeprecated-copy,
+	-Wdeprecated-copy-dtor, -Wredundant-move.
+
 2019-05-28  Tom Tromey  <tromey@adacore.com>
 
 	* ada-lang.c (ada_remove_Xbn_suffix)
diff --git a/gdb/configure b/gdb/configure
index 15a96afcca8..ff0971bc287 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -15436,7 +15436,10 @@ build_warnings="-Wall -Wpointer-arith \
 -Wsuggest-override \
 -Wimplicit-fallthrough=3 \
 -Wduplicated-cond \
--Wshadow=local"
+-Wshadow=local \
+-Wdeprecated-copy \
+-Wdeprecated-copy-dtor \
+-Wredundant-move"
 
 case "${host}" in
   *-*-mingw32*)
diff --git a/gdb/gdbserver/ChangeLog b/gdb/gdbserver/ChangeLog
index 2e98158aa6f..e15395d6954 100644
--- a/gdb/gdbserver/ChangeLog
+++ b/gdb/gdbserver/ChangeLog
@@ -1,3 +1,7 @@
+2019-05-29  Tom Tromey  <tromey@adacore.com>
+
+	* configure: Rebuild.
+
 2019-05-06  Kevin Buettner  <kevinb@redhat.com>
 
 	* linux-x86-low.c (x86_fill_gregset): Don't compile 64-bit
diff --git a/gdb/gdbserver/configure b/gdb/gdbserver/configure
index 1ddbd6b27e0..5ffdeb0816b 100755
--- a/gdb/gdbserver/configure
+++ b/gdb/gdbserver/configure
@@ -7271,7 +7271,10 @@ build_warnings="-Wall -Wpointer-arith \
 -Wsuggest-override \
 -Wimplicit-fallthrough=3 \
 -Wduplicated-cond \
--Wshadow=local"
+-Wshadow=local \
+-Wdeprecated-copy \
+-Wdeprecated-copy-dtor \
+-Wredundant-move"
 
 case "${host}" in
   *-*-mingw32*)
diff --git a/gdb/inflow.c b/gdb/inflow.c
index eba7a931f46..621f69aa40f 100644
--- a/gdb/inflow.c
+++ b/gdb/inflow.c
@@ -61,6 +61,8 @@ struct terminal_info
   terminal_info () = default;
   ~terminal_info ();
 
+  terminal_info &operator= (const terminal_info &) = default;
+
   /* The name of the tty (from the `tty' command) that we gave to the
      inferior when it was started.  */
   char *run_terminal = nullptr;
diff --git a/gdb/warning.m4 b/gdb/warning.m4
index 98eb4ce7878..c9e64a1836a 100644
--- a/gdb/warning.m4
+++ b/gdb/warning.m4
@@ -46,7 +46,10 @@ build_warnings="-Wall -Wpointer-arith \
 -Wsuggest-override \
 -Wimplicit-fallthrough=3 \
 -Wduplicated-cond \
--Wshadow=local"
+-Wshadow=local \
+-Wdeprecated-copy \
+-Wdeprecated-copy-dtor \
+-Wredundant-move"
 
 case "${host}" in
   *-*-mingw32*)
Pedro Alves May 29, 2019, 2:50 p.m. | #2
On 5/29/19 3:17 PM, Tom Tromey wrote:
>>>>>> "Tom" == Tom Tromey <tromey@adacore.com> writes:

> 

> Tom> GCC 9 has a few new warnings that aren't enabled in the gdb build by

> Tom> default: -Wdeprecated-copy, -Winit-list-lifetime, and

> Tom> -Wredundant-move.  This patch enables them all.

> 

> I was going to land this today, but when reading the GCC 9 changes page:

> 

>     https://gcc.gnu.org/gcc-9/changes.html

> 

> ... I noticed that -Winit-list-lifetime is enabled by default, and also

> that I'd missed -Wdeprecated-copy-dtor before.

> 

> Here is v2 of the patch, which makes the appropriate changes.  In this

> case one patch to the code was needed.


Looks fine.

Thanks,
Pedro Alves

Patch

diff --git a/gdb/configure b/gdb/configure
index 15a96afcca8..7f8143e1c99 100755
--- a/gdb/configure
+++ b/gdb/configure
@@ -15436,7 +15436,10 @@  build_warnings="-Wall -Wpointer-arith \
 -Wsuggest-override \
 -Wimplicit-fallthrough=3 \
 -Wduplicated-cond \
--Wshadow=local"
+-Wshadow=local \
+-Wdeprecated-copy \
+-Winit-list-lifetime \
+-Wredundant-move"
 
 case "${host}" in
   *-*-mingw32*)
diff --git a/gdb/gdbserver/configure b/gdb/gdbserver/configure
index 1ddbd6b27e0..8b6d33e8154 100755
--- a/gdb/gdbserver/configure
+++ b/gdb/gdbserver/configure
@@ -7271,7 +7271,10 @@  build_warnings="-Wall -Wpointer-arith \
 -Wsuggest-override \
 -Wimplicit-fallthrough=3 \
 -Wduplicated-cond \
--Wshadow=local"
+-Wshadow=local \
+-Wdeprecated-copy \
+-Winit-list-lifetime \
+-Wredundant-move"
 
 case "${host}" in
   *-*-mingw32*)
diff --git a/gdb/warning.m4 b/gdb/warning.m4
index 98eb4ce7878..e79e3e34b61 100644
--- a/gdb/warning.m4
+++ b/gdb/warning.m4
@@ -46,7 +46,10 @@  build_warnings="-Wall -Wpointer-arith \
 -Wsuggest-override \
 -Wimplicit-fallthrough=3 \
 -Wduplicated-cond \
--Wshadow=local"
+-Wshadow=local \
+-Wdeprecated-copy \
+-Winit-list-lifetime \
+-Wredundant-move"
 
 case "${host}" in
   *-*-mingw32*)