This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug c++/33802] g++ says `z' is used uninitialized but this is not true



------- Comment #4 from manu at gcc dot gnu dot org  2007-12-22 18:02 -------
(In reply to comment #1)
> Created an attachment (id=14366)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14366&action=view) [edit]
> (Big) testcase that allows to reproduce
> 
I can't compile the testcase with cc1plus 4.3 revision 130379. I get a lot of
warnings and a few errors. Perhaps I need to include something else ?


Anyway, the relevant SSA is:


 # BLOCK 195, starting at line 37941
  # PRED: 194 (true)
<L168>:;
  #   VUSE <zD.225363_219>;
  [/home/manuel/src/pr33802.C : 37941] z.1689D.225422_240 = zD.225363;
  [/home/manuel/src/pr33802.C : 37941] *toD.225359_119 = z.1689D.225422_240;
  [/home/manuel/src/pr33802.C : 37942] D.225423_241 = rD.225364_141;
  goto <bb 213> (<L186>);
  # SUCC: 213 (fallthru)

Wuninitialized cannot handle virtual operands, so it doesn't understand that z
could have been initialized. Funny enough, this is exactly the opposite of bug
179 but both SSA dumps look very similar. I really don't understand why we warn
in one case and not in the other.

By the way, what does 

  #   VUSE <zD.225363_219>;

exactly means? I cannot find any other mention of zD.225363_219.


-- 

manu at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2007-12-22 18:02:52
               date|                            |


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]