public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/29976]  New: [4.2/4.3 regression] ICE on optional arg
@ 2006-11-25 14:09 fxcoudert at gcc dot gnu dot org
  2006-11-25 21:19 ` [Bug fortran/29976] " pinskia at gcc dot gnu dot org
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2006-11-25 14:09 UTC (permalink / raw)
  To: gcc-bugs

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1061 bytes --]

The following code:

SUBROUTINE pw_sumup (alpha_im)
  REAL, INTENT(in), OPTIONAL :: alpha_im
  COMPLEX :: my_alpha_c
  IF (PRESENT(alpha_im)) THEN
     my_alpha_c = CMPLX(0.,alpha_im)
  END IF
END SUBROUTINE pw_sumup

ICEs on both 4.2 and 4.3, but compiles fine on 4.1.2. The ICE for 4.3 is:
foo.f90: In function ‘pw_sumup’:
foo.f90:1: internal compiler error: in build_int_cst_wide, at tree.c:852

The ICE for 4.2 is:
foo.f90: In function ‘pw_sumup’:
foo.f90:5: internal compiler error: in immed_double_const, at emit-rtl.c:464

CCing Paul and Erik, because he commited some "optional args" patch recently if
I remember correctly.


-- 
           Summary: [4.2/4.3 regression] ICE on optional arg
           Product: gcc
           Version: 4.3.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: fortran
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: fxcoudert at gcc dot gnu dot org


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug fortran/29976] [4.2/4.3 regression] ICE on optional arg
  2006-11-25 14:09 [Bug fortran/29976] New: [4.2/4.3 regression] ICE on optional arg fxcoudert at gcc dot gnu dot org
@ 2006-11-25 21:19 ` pinskia at gcc dot gnu dot org
  2006-11-27  6:19 ` paulthomas2 at wanadoo dot fr
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: pinskia at gcc dot gnu dot org @ 2006-11-25 21:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #1 from pinskia at gcc dot gnu dot org  2006-11-25 21:19 -------
The problem for the trunk is ovbious:
#4  0x080c38c1 in gfc_conv_missing_dummy (se=0xbf926cf4, arg=0x9ea1228, ts=
      {type = BT_UNKNOWN, kind = 4, derived = 0x0, cl = 0x0}) at
/src/gcc/fortran/gcc/gcc/fortran/trans-expr.c:155
155       tmp = build3 (COND_EXPR, TREE_TYPE (se->expr), present, se->expr,
(gdb) l
150     {
151       tree present;
152       tree tmp;
153
154       present = gfc_conv_expr_present (arg->symtree->n.sym);
155       tmp = build3 (COND_EXPR, TREE_TYPE (se->expr), present, se->expr,
156                     build_int_cst (TREE_TYPE (se->expr), 0));


(gdb) p debug_generic_expr (se->expr)
*alpha_imD.988
$1 = void
(gdb) p debug_tree (se->expr)
 <indirect_ref 0xb7d48020
    type <real_type 0xb7cec958 real4 SF
        size <integer_cst 0xb7cdd3d8 constant invariant 32>
        unit size <integer_cst 0xb7cdd168 constant invariant 4>
        align 32 symtab 0 alias set -1 precision 32
        pointer_to_this <pointer_type 0xb7ceca6c>>

    arg 0 <parm_decl 0xb7d47050 alpha_im
        type <pointer_type 0xb7ceca6c type <real_type 0xb7cec958 real4>
            public unsigned SI size <integer_cst 0xb7cdd3d8 32> unit size
<integer_cst 0xb7cdd168 4>
            align 32 symtab 0 alias set -1>
        readonly used unsigned SI file t.f90 line 1 size <integer_cst
0xb7cdd3d8 32> unit size <integer_cst 0xb7cdd168 4>
        align 32 context <function_decl 0xb7d453f0 pw_sumup> initial
<pointer_type 0xb7ceca6c> arg-type <pointer_type 0xb7ceca6c>>>


We are calling build_int_cst on a "real" type.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |pinskia at gcc dot gnu dot
                   |                            |org
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2006-11-25 21:19:38
               date|                            |
   Target Milestone|---                         |4.2.0


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug fortran/29976] [4.2/4.3 regression] ICE on optional arg
  2006-11-25 14:09 [Bug fortran/29976] New: [4.2/4.3 regression] ICE on optional arg fxcoudert at gcc dot gnu dot org
  2006-11-25 21:19 ` [Bug fortran/29976] " pinskia at gcc dot gnu dot org
@ 2006-11-27  6:19 ` paulthomas2 at wanadoo dot fr
  2006-11-27 22:25 ` pault at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: paulthomas2 at wanadoo dot fr @ 2006-11-27  6:19 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #2 from paulthomas2 at wanadoo dot fr  2006-11-27 06:19 -------
Subject: Re:  [4.2/4.3 regression] ICE on optional arg

Andrew,
>
> We are calling build_int_cst on a "real" type.
>   
Yes, I discovered the same on my flight back to France last night.  Will 
come up with a fix tonight.

Paul


-- 


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug fortran/29976] [4.2/4.3 regression] ICE on optional arg
  2006-11-25 14:09 [Bug fortran/29976] New: [4.2/4.3 regression] ICE on optional arg fxcoudert at gcc dot gnu dot org
  2006-11-25 21:19 ` [Bug fortran/29976] " pinskia at gcc dot gnu dot org
  2006-11-27  6:19 ` paulthomas2 at wanadoo dot fr
@ 2006-11-27 22:25 ` pault at gcc dot gnu dot org
  2006-11-28  1:18 ` jvdelisle at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: pault at gcc dot gnu dot org @ 2006-11-27 22:25 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #3 from pault at gcc dot gnu dot org  2006-11-27 22:25 -------
I will submit the patch as 'obvious' tomorrow morning - see:

http://gcc.gnu.org/ml/fortran/2006-11/msg00686.html

Paul


-- 

pault at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |pault at gcc dot gnu dot org
                   |dot org                     |
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2006-11-25 21:19:38         |2006-11-27 22:25:28
               date|                            |


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug fortran/29976] [4.2/4.3 regression] ICE on optional arg
  2006-11-25 14:09 [Bug fortran/29976] New: [4.2/4.3 regression] ICE on optional arg fxcoudert at gcc dot gnu dot org
                   ` (2 preceding siblings ...)
  2006-11-27 22:25 ` pault at gcc dot gnu dot org
@ 2006-11-28  1:18 ` jvdelisle at gcc dot gnu dot org
  2006-11-28  5:25 ` paulthomas2 at wanadoo dot fr
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: jvdelisle at gcc dot gnu dot org @ 2006-11-28  1:18 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #4 from jvdelisle at gcc dot gnu dot org  2006-11-28 01:18 -------
I think wrong url in comment #3


-- 


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug fortran/29976] [4.2/4.3 regression] ICE on optional arg
  2006-11-25 14:09 [Bug fortran/29976] New: [4.2/4.3 regression] ICE on optional arg fxcoudert at gcc dot gnu dot org
                   ` (3 preceding siblings ...)
  2006-11-28  1:18 ` jvdelisle at gcc dot gnu dot org
@ 2006-11-28  5:25 ` paulthomas2 at wanadoo dot fr
  2006-11-28  5:40 ` pault at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: paulthomas2 at wanadoo dot fr @ 2006-11-28  5:25 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #5 from paulthomas2 at wanadoo dot fr  2006-11-28 05:25 -------
Subject: Re:  [4.2/4.3 regression] ICE on optional arg

jvdelisle at gcc dot gnu dot org wrote:
> ------- Comment #4 from jvdelisle at gcc dot gnu dot org  2006-11-28 01:18 -------
> I think wrong url in comment #3
>
>
>   
'tis not.... read (ii). :-)

Paul


-- 


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug fortran/29976] [4.2/4.3 regression] ICE on optional arg
  2006-11-25 14:09 [Bug fortran/29976] New: [4.2/4.3 regression] ICE on optional arg fxcoudert at gcc dot gnu dot org
                   ` (4 preceding siblings ...)
  2006-11-28  5:25 ` paulthomas2 at wanadoo dot fr
@ 2006-11-28  5:40 ` pault at gcc dot gnu dot org
  2006-11-28  5:52 ` pault at gcc dot gnu dot org
  2006-11-28  8:15 ` pault at gcc dot gnu dot org
  7 siblings, 0 replies; 9+ messages in thread
From: pault at gcc dot gnu dot org @ 2006-11-28  5:40 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #6 from pault at gcc dot gnu dot org  2006-11-28 05:39 -------
Subject: Bug 29976

Author: pault
Date: Tue Nov 28 05:39:42 2006
New Revision: 119273

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=119273
Log:
2006-11-28  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/29976
        * trans-expr.c (gfc_conv_missing_dummy): Remove build_int_const
        and replace with cast to type of se->expr of integer_zero_node.

2006-11-28  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/29976
        * gfortran.dg/missing_optional_dummy_3.f90

Added:
    trunk/gcc/testsuite/gfortran.dg/missing_optional_dummy_3.f90
Modified:
    trunk/gcc/fortran/ChangeLog
    trunk/gcc/fortran/trans-expr.c
    trunk/gcc/testsuite/ChangeLog


-- 


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug fortran/29976] [4.2/4.3 regression] ICE on optional arg
  2006-11-25 14:09 [Bug fortran/29976] New: [4.2/4.3 regression] ICE on optional arg fxcoudert at gcc dot gnu dot org
                   ` (5 preceding siblings ...)
  2006-11-28  5:40 ` pault at gcc dot gnu dot org
@ 2006-11-28  5:52 ` pault at gcc dot gnu dot org
  2006-11-28  8:15 ` pault at gcc dot gnu dot org
  7 siblings, 0 replies; 9+ messages in thread
From: pault at gcc dot gnu dot org @ 2006-11-28  5:52 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #7 from pault at gcc dot gnu dot org  2006-11-28 05:52 -------
Subject: Bug 29976

Author: pault
Date: Tue Nov 28 05:52:02 2006
New Revision: 119275

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=119275
Log:
2006-11-28  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/29976
        * trans-expr.c (gfc_conv_missing_dummy): Remove build_int_const
        and replace with cast to type of se->expr of integer_zero_node.

2006-11-28  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/29976
        * gfortran.dg/missing_optional_dummy_3.f90

Added:
   
branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/missing_optional_dummy_3.f90
Modified:
    branches/gcc-4_2-branch/gcc/fortran/ChangeLog
    branches/gcc-4_2-branch/gcc/fortran/trans-expr.c
    branches/gcc-4_2-branch/gcc/testsuite/ChangeLog


-- 


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Bug fortran/29976] [4.2/4.3 regression] ICE on optional arg
  2006-11-25 14:09 [Bug fortran/29976] New: [4.2/4.3 regression] ICE on optional arg fxcoudert at gcc dot gnu dot org
                   ` (6 preceding siblings ...)
  2006-11-28  5:52 ` pault at gcc dot gnu dot org
@ 2006-11-28  8:15 ` pault at gcc dot gnu dot org
  7 siblings, 0 replies; 9+ messages in thread
From: pault at gcc dot gnu dot org @ 2006-11-28  8:15 UTC (permalink / raw)
  To: gcc-bugs



------- Comment #8 from pault at gcc dot gnu dot org  2006-11-28 08:14 -------
Fixed

Paul


-- 

pault at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2006-11-28  8:15 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-11-25 14:09 [Bug fortran/29976] New: [4.2/4.3 regression] ICE on optional arg fxcoudert at gcc dot gnu dot org
2006-11-25 21:19 ` [Bug fortran/29976] " pinskia at gcc dot gnu dot org
2006-11-27  6:19 ` paulthomas2 at wanadoo dot fr
2006-11-27 22:25 ` pault at gcc dot gnu dot org
2006-11-28  1:18 ` jvdelisle at gcc dot gnu dot org
2006-11-28  5:25 ` paulthomas2 at wanadoo dot fr
2006-11-28  5:40 ` pault at gcc dot gnu dot org
2006-11-28  5:52 ` pault at gcc dot gnu dot org
2006-11-28  8:15 ` pault at gcc dot gnu dot org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).