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 fortran/38822] Compile-time simplification of x**(real) / ICE in in gfc_target_encode_expr



------- Comment #1 from burnus at gcc dot gnu dot org  2009-01-13 16:33 -------
The problem is the following in arith.c:
  if (op == INTRINSIC_POWER && op2->ts.type != BT_INTEGER)
    goto runtime;

Thus it is only run-time evaluated. gfc_arith_power deals so far only with
(numeric_type)**(integer). We need to handle (complex)**(complex)
and (real)**(real).

I think Fortran 2003 allows ** in initialization expressions (at least I could
not find anything else) and thus one needs this. See also PR 38823.


-- 

burnus at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|ICE in in                   |Compile-time simplification
                   |gfc_target_encode_expr      |of x**(real)  /  ICE in in
                   |                            |gfc_target_encode_expr


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


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