Initialize variables in i386_linux_handle_segmentation_fault
authorSimon Marchi <simon.marchi@ericsson.com>
Thu, 25 Feb 2016 16:03:22 +0000 (11:03 -0500)
committerSimon Marchi <simon.marchi@ericsson.com>
Thu, 25 Feb 2016 16:03:23 +0000 (11:03 -0500)
We see this error when building with gcc 4.3.

../../gdb/i386-linux-tdep.c: In function ‘i386_linux_handle_segmentation_fault’:
../../gdb/i386-linux-tdep.c:399: error: ‘access’ may be used uninitialized in this function
../../gdb/i386-linux-tdep.c:399: error: ‘upper_bound’ may be used uninitialized in this function
../../gdb/i386-linux-tdep.c:399: error: ‘lower_bound’ may be used uninitialized in this function

It's a false positive, since the variables will always get initialized
in the TRY clause, and the CATCH returns.

gdb/ChangeLog:

* i386-linux-tdep.c (i386_linux_handle_segmentation_fault):
Initialize variables.

gdb/ChangeLog
gdb/i386-linux-tdep.c

index dc123996c544ce3a978ab9333bf40f16d0d6754c..00af3950277450e1f612c0dc4886905f6fd91920 100644 (file)
@@ -1,3 +1,8 @@
+2016-02-25  Simon Marchi  <simon.marchi@ericsson.com>
+
+       * i386-linux-tdep.c (i386_linux_handle_segmentation_fault):
+       Initialize variables.
+
 2016-02-25  Antoine Tremblay  <antoine.tremblay@ericsson.com>
 
        * ax-general.c (ax_reg): Call gdbarch_remote_register_number.
index 63cda45d608d311607d838d8b451817080c19287..42877dab4109df957d23edabdebef74022c1ad2e 100644 (file)
@@ -396,7 +396,8 @@ void
 i386_linux_handle_segmentation_fault (struct gdbarch *gdbarch,
                                      struct ui_out *uiout)
 {
-  CORE_ADDR lower_bound, upper_bound, access;
+  /* -Wmaybe-uninitialized  */
+  CORE_ADDR lower_bound = 0, upper_bound = 0, access = 0;
   int is_upper;
   long sig_code = 0;