[Bug middle-end/40943] [4.4/4.5 Regression] Uninitialized warning is missed when dereferencing uninitialized pointers

2009-08-03 Thread jakub at gcc dot gnu dot org


--- Comment #2 from jakub at gcc dot gnu dot org  2009-08-03 13:10 ---
Broken by Manu's PR179 changes:
http://gcc.gnu.org/viewcvs?root=gccview=revrev=139347


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40943



[Bug middle-end/40943] [4.4/4.5 Regression] Uninitialized warning is missed when dereferencing uninitialized pointers

2009-08-03 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2009-08-03 13:41 ---
Created an attachment (id=18289)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18289action=view)
gcc45-pr40943.patch

Untested fix.  It breaks uninit-6*.c again though, but fixing this kind of
false positive by simply disabling uninitialized warnings for all pointer
dereferences on LHS is IMHO too big hammer.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40943



[Bug middle-end/40943] [4.4/4.5 Regression] Uninitialized warning is missed when dereferencing uninitialized pointers

2009-08-03 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2009-08-03 13:44 ---
Since the alias-improvements branch merge uninitialized warnings for aggregates
are seriously broken implementation wise anyway.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40943



[Bug middle-end/40943] [4.4/4.5 Regression] Uninitialized warning is missed when dereferencing uninitialized pointers

2009-08-03 Thread manu at gcc dot gnu dot org


--- Comment #5 from manu at gcc dot gnu dot org  2009-08-03 14:07 ---
(In reply to comment #3)
 Created an attachment (id=18289)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18289action=view) [edit]
 gcc45-pr40943.patch
 
 Untested fix.  It breaks uninit-6*.c again though, but fixing this kind of
 false positive by simply disabling uninitialized warnings for all pointer
 dereferences on LHS is IMHO too big hammer.
 

I was testing the exactly same patch, you posted first, so the honor is yours.
:-)

Notice that you should not need -O2 for testing this. The testcase should work
even with -O0.

Notice that uninit-6 is a missed optimization. Even with -O2, the unreachable
use of field is still present in the code shown by
uninit-6-O0.c.136t.optimized, so it seems the tree optimizers do not handle
this case. My patch only hide the symptom (the warning) but the missed
optimization was still there so we could xfail it again.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40943



[Bug middle-end/40943] [4.4/4.5 Regression] Uninitialized warning is missed when dereferencing uninitialized pointers

2009-08-03 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2009-08-02 21:42:12 |2009-08-03 16:22:45
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40943



[Bug middle-end/40943] [4.4/4.5 Regression] Uninitialized warning is missed when dereferencing uninitialized pointers

2009-08-03 Thread jakub at gcc dot gnu dot org


--- Comment #6 from jakub at gcc dot gnu dot org  2009-08-03 19:26 ---
Subject: Bug 40943

Author: jakub
Date: Mon Aug  3 19:26:10 2009
New Revision: 150379

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=150379
Log:
PR middle-end/40943
* tree-ssa.c (warn_uninitialized_var): Even on LHS warn for
operand of INDIRECT_REF.

* gcc.dg/uninit-6.c: Re-add XFAIL.
* gcc.dg/uninit-6-O0.c: Likewise.
* gcc.dg/uninit-pr40943.c: New test.

Added:
trunk/gcc/testsuite/gcc.dg/uninit-pr40943.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/uninit-6-O0.c
trunk/gcc/testsuite/gcc.dg/uninit-6.c
trunk/gcc/tree-ssa.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40943



[Bug middle-end/40943] [4.4/4.5 Regression] Uninitialized warning is missed when dereferencing uninitialized pointers

2009-08-03 Thread jakub at gcc dot gnu dot org


--- Comment #7 from jakub at gcc dot gnu dot org  2009-08-03 19:27 ---
Subject: Bug 40943

Author: jakub
Date: Mon Aug  3 19:27:32 2009
New Revision: 150380

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=150380
Log:
PR middle-end/40943
* tree-ssa.c (warn_uninitialized_var): Even on LHS warn for
operand of INDIRECT_REF.

* gcc.dg/uninit-6.c: Re-add XFAIL.
* gcc.dg/uninit-6-O0.c: Likewise.
* gcc.dg/uninit-pr40943.c: New test.

Added:
branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/uninit-pr40943.c
Modified:
branches/gcc-4_4-branch/gcc/ChangeLog
branches/gcc-4_4-branch/gcc/testsuite/ChangeLog
branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/uninit-6-O0.c
branches/gcc-4_4-branch/gcc/testsuite/gcc.dg/uninit-6.c
branches/gcc-4_4-branch/gcc/tree-ssa.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40943



[Bug middle-end/40943] [4.4/4.5 Regression] Uninitialized warning is missed when dereferencing uninitialized pointers

2009-08-03 Thread jakub at gcc dot gnu dot org


--- Comment #8 from jakub at gcc dot gnu dot org  2009-08-03 19:32 ---
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40943



[Bug middle-end/40943] [4.4/4.5 Regression] Uninitialized warning is missed when dereferencing uninitialized pointers

2009-08-02 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2009-08-02 21:42 ---
Confirmed.  I see no technical reason for this.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||diagnostic
  Known to fail||4.4.1 4.5.0
  Known to work||4.3.3
   Last reconfirmed|-00-00 00:00:00 |2009-08-02 21:42:12
   date||
Summary|Uninitialized warning is|[4.4/4.5 Regression]
   |missed when dereferencing   |Uninitialized warning is
   |uninitialized pointers  |missed when dereferencing
   ||uninitialized pointers
   Target Milestone|--- |4.4.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40943