[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-29 Thread hjl at gcc dot gnu dot org
--- Comment #19 from hjl at gcc dot gnu dot org 2009-08-30 02:07 --- Subject: Bug 41139 Author: hjl Date: Sun Aug 30 02:06:32 2009 New Revision: 151218 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=151218 Log: 2009-08-29 H.J. Lu Backport from mainline: 2009-

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-25 Thread janus at gcc dot gnu dot org
--- Comment #18 from janus at gcc dot gnu dot org 2009-08-25 14:29 --- Fixed with r151081. Closing. -- janus at gcc dot gnu dot org changed: What|Removed |Added

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-25 Thread janus at gcc dot gnu dot org
--- Comment #17 from janus at gcc dot gnu dot org 2009-08-25 14:27 --- Subject: Bug 41139 Author: janus Date: Tue Aug 25 14:26:44 2009 New Revision: 151081 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=151081 Log: 2009-08-25 Janus Weil PR fortran/41139 * pri

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-23 Thread mmitchel at gcc dot gnu dot org
-- mmitchel at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P5 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41139

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-23 Thread janus at gcc dot gnu dot org
--- Comment #16 from janus at gcc dot gnu dot org 2009-08-23 21:15 --- (In reply to comment #15) > > D.1533 = f (&C.1531, &C.1532); > > In principle the 'f' here should be an 'o.f'. I opened PR 41149 to track this issue. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41139

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-22 Thread janus at gcc dot gnu dot org
--- Comment #15 from janus at gcc dot gnu dot org 2009-08-22 09:43 --- (In reply to comment #14) > Is this what you want? Jep. > D.1533 = f (&C.1531, &C.1532); In principle the 'f' here should be an 'o.f'. Maybe we can postpone this issue until the other stuff is fixed (will post

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-22 Thread dominiq at lps dot ens dot fr
--- Comment #14 from dominiq at lps dot ens dot fr 2009-08-22 09:27 --- > Dominique, can you post your dump for comment #4 (especially the call to o%f)? Is this what you want? o.f = add; { real(kind=4) D.1533; static real(kind=4) C.1532 = 2.0e+0; static real(kind=4) C.1

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-22 Thread janus at gcc dot gnu dot org
--- Comment #13 from janus at gcc dot gnu dot org 2009-08-22 09:19 --- (In reply to comment #12) > @@ -3512,8 +3513,7 @@ gfc_get_proc_ptr_comp (gfc_se *se, gfc_e >e2 = gfc_copy_expr (e); >e2->expr_type = EXPR_VARIABLE; >gfc_conv_expr (&comp_se, e2); > - comp_se.expr = build_

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-22 Thread dominiq at lps dot ens dot fr
--- Comment #12 from dominiq at lps dot ens dot fr 2009-08-22 08:57 --- In order to avoid the error reported in comment #8, I have tested the following patches: (1) Index: gcc/fortran/trans-expr.c === --- ../_gcc_clean/gcc

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread janus at gcc dot gnu dot org
--- Comment #11 from janus at gcc dot gnu dot org 2009-08-21 20:27 --- Here is another variant of the test case which fails at runtime: PROGRAM test type :: t PROCEDURE(three), POINTER, nopass :: f end type type(t) :: o logical :: g o%f => three g=greater(4.,o%f()) print *,g

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread burnus at gcc dot gnu dot org
--- Comment #10 from burnus at gcc dot gnu dot org 2009-08-21 18:03 --- (In reply to comment #9) > Working: 2009-07-10, r149458 > Failing: 2009-07-17, r149734 Wrong PR - sorry, that should go to PR debug/40660 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41139

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread burnus at gcc dot gnu dot org
--- Comment #9 from burnus at gcc dot gnu dot org 2009-08-21 18:02 --- Working: 2009-07-10, r149458 Failing: 2009-07-17, r149734 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41139

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread dominiq at lps dot ens dot fr
--- Comment #8 from dominiq at lps dot ens dot fr 2009-08-21 17:08 --- With the patch in comment #7, compiling gcc/fortran/trans-expr.c fails with: ... cc1: warnings being treated as errors ../../gcc-4.5-work/gcc/fortran/trans-expr.c: In function 'gfc_get_proc_ptr_comp': ../../gcc-4.5-w

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread janus at gcc dot gnu dot org
--- Comment #7 from janus at gcc dot gnu dot org 2009-08-21 15:11 --- (In reply to comment #4) > D.1571 = o.f; > D.1572 = D.1571 (&C.1569, &C.1570); > g = (logical(kind=4)) greater (&C.1568, &&D.1572); Btw, it seems unnecessary to me that every PPC call generates a temporary

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread janus at gcc dot gnu dot org
--- Comment #6 from janus at gcc dot gnu dot org 2009-08-21 14:50 --- This simple patch fixes comment #2: Index: gcc/fortran/trans-expr.c === --- gcc/fortran/trans-expr.c(revision 150987) +++ gcc/fortran/trans-expr.c

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread janus at gcc dot gnu dot org
--- Comment #5 from janus at gcc dot gnu dot org 2009-08-21 14:03 --- > (1) I had to make the change you have posted in comment #2 to run a test. > > (2) The code in comment #0 is illegal and should not be used for the test > suite. Of course. Thanks for pointing this out :) -- h

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread janus at gcc dot gnu dot org
--- Comment #4 from janus at gcc dot gnu dot org 2009-08-21 14:00 --- Side note: If one constructs an analogous test case with PPCs, this does not have the missing-temporary problem. But it has a different one: PROGRAM test type :: t PROCEDURE(add), POINTER, nopass :: f end type

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread dominiq at lps dot ens dot fr
--- Comment #3 from dominiq at lps dot ens dot fr 2009-08-21 13:58 --- > > Beware the forbidden recursive I/Os! > > This is not the issue here. ... Indeed I know! but (1) I had to make the change you have posted in comment #2 to run a test. (2) The code in comment #0 is illegal and s

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread janus at gcc dot gnu dot org
--- Comment #2 from janus at gcc dot gnu dot org 2009-08-21 13:51 --- > Beware the forbidden recursive I/Os! This is not the issue here. The following variation has no recursive I/O, but gives the same segfault: PROGRAM test PROCEDURE(add), POINTER :: f logical :: g ! Passing the

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread dominiq at lps dot ens dot fr
--- Comment #1 from dominiq at lps dot ens dot fr 2009-08-21 13:35 --- Beware the forbidden recursive I/Os!-(the test hangs on Darwin, see pr30617). Otherwise, after using a temp for greater, I get a Bus error. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41139

[Bug fortran/41139] [4.5 Regression] a procedure pointer call as actual argument

2009-08-21 Thread janus at gcc dot gnu dot org
-- janus at gcc dot gnu dot org changed: What|Removed |Added CC||barron dot bichon at swri |