[Bug tree-optimization/41987] [4.5 Regression] expected class ‘constant’, have ‘binary’ (rdiv_expr) in build_complex, at tree.c:1485

ghazi at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Mon Nov 9 17:56:00 GMT 2009



------- Comment #6 from ghazi at gcc dot gnu dot org  2009-11-09 17:56 -------
The bug is not latent and also it is not in GCC code related MPC.  It lies in
the tree-based fallback code I wrote to handle complex division when MPC is not
used.  This code will still persist even after the switch to MPC.  E.g. I can
trigger it from a C testcase using "_Complex int" and this scenario will remain
after the cutover.  I.e. the C testcase below crashes both with and without
MPC.

As for why the fortran testcase passes with MPC, I guess that it gets folded in
the fortran frontend, thus it's masked and the middle-end never sees it.  I
believe I know what's wrong in fold and I'm working on a fix.

void qparm_colvar(void)
{
  _Complex int ylm;
  int nbond;

  ylm = 0;
  nbond = 0;
  ylm = ylm / nbond;
}


-- 

ghazi at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |ghazi at gcc dot gnu dot org
                   |dot org                     |
             Status|UNCONFIRMED                 |ASSIGNED
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2009-11-09 17:56:11
               date|                            |


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



More information about the Gcc-bugs mailing list