public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument
@ 2011-07-05 17:06 burnus at gcc dot gnu.org
2011-07-05 17:15 ` [Bug fortran/49648] " burnus at gcc dot gnu.org
` (16 more replies)
0 siblings, 17 replies; 18+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-07-05 17:06 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
Summary: ICE(segfault) with MATHMUL and function-result actual
argument
Product: gcc
Version: 4.7.0
Status: UNCONFIRMED
Keywords: ice-on-valid-code
Severity: normal
Priority: P3
Component: fortran
AssignedTo: unassigned@gcc.gnu.org
ReportedBy: burnus@gcc.gnu.org
Created attachment 24696
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=24696
test case
With gfortran 4.1 to 4.7, I get a segfault for the attached program:
test.f90: In function ‘gf_generateembpot’:
test.f90:31:0: internal compiler error: Segmentation fault
==1006== Invalid read of size 4
==1006== at 0x57C534: gfc_walk_subexpr (trans-array.c:7509)
==1006== by 0x57CC10: gfc_walk_expr (trans-array.c:7893)
==1006== by 0x5A2B32: gfc_conv_intrinsic_size (trans-intrinsic.c:4947)
==1006== by 0x5B159C: gfc_conv_intrinsic_function (trans-intrinsic.c:6595)
==1006== by 0x5A0532: gfc_conv_function_expr (trans-expr.c:4064)
==1006== by 0x59C629: gfc_apply_interface_mapping (trans-expr.c:2313)
==1006== by 0x57229B: gfc_set_loop_bounds_from_array_spec
(trans-array.c:585)
==1006== by 0x59FC79: gfc_conv_procedure_call (trans-expr.c:3509)
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATHMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
@ 2011-07-05 17:15 ` burnus at gcc dot gnu.org
2011-07-05 17:31 ` burnus at gcc dot gnu.org
` (15 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-07-05 17:15 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-07-05 17:14:31 UTC ---
At some point, the array spec seems to got lost:
COMPLEX,SAVE,ALLOCATABLE::P(:)
COMPLEX:: PM(SIZE(P),SIZE(P))
We have:
(gdb) p expr->expr_type
$1 = EXPR_VARIABLE
(gdb) p expr->symtree->n.sym->name
$2 = 0x2aaaaab42fb8 "p"
(gdb) p expr->ref->type
$4 = REF_ARRAY
(gdb) p expr->ref->u.ar
$5 = {type = AR_FULL, dimen = 0, [...] as = 0x0, [...]}
And in gfc_walk_variable_expr's switch (ar->type):
case AR_FULL:
[...]
newss->data.info.dimen = ar->as->rank;
which is a NULL pointer access.
The question is: Why is ar->as == NULL?
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATHMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
2011-07-05 17:15 ` [Bug fortran/49648] " burnus at gcc dot gnu.org
@ 2011-07-05 17:31 ` burnus at gcc dot gnu.org
2011-07-05 19:01 ` burnus at gcc dot gnu.org
` (14 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-07-05 17:31 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |pault at gcc dot gnu.org
Blocks| |32834
Known to fail| |4.1.2, 4.3.4, 4.4.0, 4.5.1,
| |4.6.0, 4.7.0
--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-07-05 17:29:45 UTC ---
The crucial point about the bug seems to be that "getPhaseMatrix" is in a
(different) module than the call in matmul.
Paul, do you have an idea where to look?
module m2
COMPLEX, SAVE, ALLOCATABLE :: P(:)
contains
FUNCTION getPhaseMatrix() RESULT(PM)
COMPLEX:: PM(SIZE(P),3)
PM=0.0
END FUNCTION
end module m2
module m
use m2
contains
SUBROUTINE gf_generateEmbPot()
COMPLEX :: sigma2(3,3)
sigma2 = MATMUL(getPhaseMatrix(), sigma2)
END SUBROUTINE
end module m
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATHMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
2011-07-05 17:15 ` [Bug fortran/49648] " burnus at gcc dot gnu.org
2011-07-05 17:31 ` burnus at gcc dot gnu.org
@ 2011-07-05 19:01 ` burnus at gcc dot gnu.org
2011-07-05 19:47 ` burnus at gcc dot gnu.org
` (13 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-07-05 19:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #3 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-07-05 19:00:51 UTC ---
Draft patch, which seems to fix some ref->u.ar->as issues for "p" - but not the
one, I am looking for. At least the added assert now triggers.
* * *
Debugging shows that when resolving MAXMUL, one calls resolve_actual_arglist
for SIZE's p. At that point "p's e->ref->u.ar.as == NULL, which is fixed. One
then resolves MAXMUL in resolve_actual_arglist for getPhaseMatrix; if one now
looks at getPhaseMatrix's e->symtree->n.sym->as->upper[0], one finds:
(gdb) p arg->expr->symtree->n.sym->as->upper[0]->value.function.isym->id
$11 = GFC_ISYM_SIZE
(gdb) p
arg->expr->symtree->n.sym->as->upper[0]->value.function.actual->expr->symtree->n.sym->name
$12 = 0x2aaaaab42fa0 "p"
(gdb) p
arg->expr->symtree->n.sym->as->upper[0]->value.function.actual->expr->ref->u.ar.as.
A syntax error in expression, near `'.
(gdb) p
arg->expr->symtree->n.sym->as->upper[0]->value.function.actual->expr->ref->u.ar.as
$13 = (gfc_array_spec *) 0x159f830
Which also looks fine.
Seemingly, the problem is really the result variable - which seems to be
carried through:
(gdb) p arg->expr->symtree->n.sym->result->name
$17 = 0x2aaaaab42fb8 "pm"
And as both "as" are different:
(gdb) p arg->expr->symtree->n.sym->result->as
$18 = (gfc_array_spec *) 0x159ef70
(gdb) p arg->expr->symtree->n.sym->as
$19 = (gfc_array_spec *) 0x159cd40
it is not surprising that one get's at the end:
(gdb) p
arg->expr->symtree->n.sym->result->as->upper[0]->value.function.actual->expr->ref->u.ar.as
$14 = (gfc_array_spec *) 0x0
If one removes the RESULT(), it works - even without the patch.
--- a/gcc/fortran/trans-array.c
+++ b/gcc/fortran/trans-array.c
@@ -7506,6 +7521,7 @@ gfc_walk_variable_expr (gfc_ss * ss, gfc_expr * expr)
ar = &ref->u.ar;
+ gcc_assert (ar->as);
if (ar->as->rank == 0 && ref->next != NULL)
{
/* Scalar coarray. */
--- a/gcc/fortran/resolve.c
+++ b/gcc/fortran/resolve.c
@@ -82,6 +82,11 @@ static bitmap_obstack labels_obstack;
/* True when simplifying a EXPR_VARIABLE argument to an inquiry function. */
static bool inquiry_argument = false;
+
+/* Prototypes of static functions. */
+static gfc_try resolve_ref (gfc_expr *);
+
+
int
gfc_is_formal_arg (void)
{
@@ -1577,6 +1582,9 @@ resolve_actual_arglist (gfc_actual_arglist *arg,
procedure_type ptype,
&& count_specific_procs (e) != 1)
return FAILURE;
+ if (e->ref && e->symtree->n.sym->attr.use_assoc)
+ resolve_ref (e);
+
if (e->ts.type != BT_PROCEDURE)
{
save_need_full_assumed_size = need_full_assumed_size;
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATHMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (2 preceding siblings ...)
2011-07-05 19:01 ` burnus at gcc dot gnu.org
@ 2011-07-05 19:47 ` burnus at gcc dot gnu.org
2011-07-05 22:52 ` burnus at gcc dot gnu.org
` (12 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-07-05 19:47 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #4 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-07-05 19:46:45 UTC ---
Draft patch, which should also save some memory, .mod file-size and should
slightly speed the program.
It fixes the test case in comment 0 and comment 2, but I have not yet regtested
it (currently bootstrapping). A modification would be to not write it at all -
and simply add "sym->result = sym" if sym->attr.function. (This will break .mod
compatibility, which was last done 2011-03-29 - though I am not 100% sure that
4.6 and 4.7 are indeed still compatible.)
--- a/gcc/fortran/module.c
+++ b/gcc/fortran/module.c
@@ -3631,7 +3637,10 @@ mio_symbol (gfc_symbol *sym)
mio_array_spec (&sym->as);
- mio_symbol_ref (&sym->result);
+ if (iomode == IO_OUTPUT && sym->result != sym)
+ mio_symbol_ref (&sym);
+ else
+ mio_symbol_ref (&sym->result);
if (sym->attr.cray_pointee)
mio_symbol_ref (&sym->cp_pointer);
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATHMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (3 preceding siblings ...)
2011-07-05 19:47 ` burnus at gcc dot gnu.org
@ 2011-07-05 22:52 ` burnus at gcc dot gnu.org
2011-07-06 6:44 ` [Bug fortran/49648] ICE(segfault) with MATMUL " burnus at gcc dot gnu.org
` (11 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-07-05 22:52 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #5 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-07-05 22:52:01 UTC ---
(In reply to comment #4)
> Draft patch, which should also save some memory, .mod file-size and should
> slightly speed the program.
The patch fails for procedure pointers - as the function->attr.proc_pointer ==
0 and only function->result->attr.proc_pointer != 0, cf.
add_hidden_procptr_result. For instance: gfortran.dg/proc_ptr_result_1.f90 and
gfortran.dg/proc_ptr_result_3.f90.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (4 preceding siblings ...)
2011-07-05 22:52 ` burnus at gcc dot gnu.org
@ 2011-07-06 6:44 ` burnus at gcc dot gnu.org
2011-07-06 14:25 ` mikael at gcc dot gnu.org
` (10 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-07-06 6:44 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
Tobias Burnus <burnus at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |janus at gcc dot gnu.org
--- Comment #6 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-07-06 06:43:37 UTC ---
I tried something fancier by setting the proc_pointer/pointer attribute of
sym->attr based on sym->result->attr, but that fails for proc_ptr_result_3.f90
(cf. failing patch below). -- In that case, "get_sub()" is a function, which
returns a subroutine procedure pointer, i.e. "sym->result" is a subroutine
while "sym" itself is a function.
One solution would be, to save only the result attribute - in particular the
attr.subroutine/attr.function - and construct a new result symbol, re-using as
much as possible from "sym" itself. One just needs to make sure that one does
not double free components.
Alternatively, one should somehow make sure that also expressions below
sym->result - in particular: sym->result->as->{lbound,ubound} - get fixed via a
call to resolve_ref.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (5 preceding siblings ...)
2011-07-06 6:44 ` [Bug fortran/49648] ICE(segfault) with MATMUL " burnus at gcc dot gnu.org
@ 2011-07-06 14:25 ` mikael at gcc dot gnu.org
2011-07-06 15:01 ` mikael at gcc dot gnu.org
` (9 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: mikael at gcc dot gnu.org @ 2011-07-06 14:25 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
Mikael Morin <mikael at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |mikael at gcc dot gnu.org
--- Comment #7 from Mikael Morin <mikael at gcc dot gnu.org> 2011-07-06 14:25:10 UTC ---
Here is a "fix".
The important part I suppose is that one has to apply resolve_symbol on
sym->result. It is the case before the patch, only if the symbol has unknown
type.
diff --git a/resolve.c b/resolve.c
index f484a22..908e72b 100644
--- a/resolve.c
+++ b/resolve.c
@@ -12181,21 +12181,22 @@ resolve_symbol (gfc_symbol *sym)
in the case that there is no implicit type. */
if (!mp_flag)
gfc_set_default_type (sym, sym->attr.external, NULL);
- else
- {
- /* Result may be in another namespace. */
- resolve_symbol (sym->result);
+ }
+ }
- if (!sym->result->attr.proc_pointer)
- {
- sym->ts = sym->result->ts;
- sym->as = gfc_copy_array_spec (sym->result->as);
- sym->attr.dimension = sym->result->attr.dimension;
- sym->attr.pointer = sym->result->attr.pointer;
- sym->attr.allocatable = sym->result->attr.allocatable;
- sym->attr.contiguous = sym->result->attr.contiguous;
- }
- }
+ if (mp_flag && sym->attr.flavor == FL_PROCEDURE && sym->attr.function)
+ {
+ /* Result may be in another namespace. */
+ resolve_symbol (sym->result);
+
+ if (!sym->result->attr.proc_pointer)
+ {
+ sym->ts = sym->result->ts;
+ sym->as = gfc_copy_array_spec (sym->result->as);
+ sym->attr.dimension = sym->result->attr.dimension;
+ sym->attr.pointer = sym->result->attr.pointer;
+ sym->attr.allocatable = sym->result->attr.allocatable;
+ sym->attr.contiguous = sym->result->attr.contiguous;
}
}
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (6 preceding siblings ...)
2011-07-06 14:25 ` mikael at gcc dot gnu.org
@ 2011-07-06 15:01 ` mikael at gcc dot gnu.org
2011-07-06 16:54 ` burnus at gcc dot gnu.org
` (8 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: mikael at gcc dot gnu.org @ 2011-07-06 15:01 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #8 from Mikael Morin <mikael at gcc dot gnu.org> 2011-07-06 15:00:56 UTC ---
(In reply to comment #7)
> Here is a "fix".
It breaks class_20.f03 and extends_4.f03 at least.
There is another attempt below.
(In reply to comment #6)
> Alternatively, one should somehow make sure that also expressions below
> sym->result - in particular: sym->result->as->{lbound,ubound} - get fixed via a
> call to resolve_ref.
That is a better way (than your other suggestions) IMO.
diff --git a/resolve.c b/resolve.c
index f484a22..cbf403c 100644
--- a/resolve.c
+++ b/resolve.c
@@ -12198,6 +12198,8 @@ resolve_symbol (gfc_symbol *sym)
}
}
}
+ else if (mp_flag && sym->attr.flavor == FL_PROCEDURE && sym->attr.function)
+ gfc_resolve_array_spec (sym->result->as, false);
/* Assumed size arrays and assumed shape arrays must be dummy
arguments. Array-spec's of implied-shape should have been resolved to
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (7 preceding siblings ...)
2011-07-06 15:01 ` mikael at gcc dot gnu.org
@ 2011-07-06 16:54 ` burnus at gcc dot gnu.org
2011-07-06 17:28 ` mikael at gcc dot gnu.org
` (7 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: burnus at gcc dot gnu.org @ 2011-07-06 16:54 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #9 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-07-06 16:53:32 UTC ---
(In reply to comment #8)
> + else if (mp_flag && sym->attr.flavor == FL_PROCEDURE && sym->attr.function)
> + gfc_resolve_array_spec (sym->result->as, false);
I think one could add somewhere a condition "if (sym != sym->result)"; and I
was wondering whether also other items like length-type parameters are
effected. (I think, usually character lengths are shared, but I am not sure
whether it also happens here.)
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (8 preceding siblings ...)
2011-07-06 16:54 ` burnus at gcc dot gnu.org
@ 2011-07-06 17:28 ` mikael at gcc dot gnu.org
2011-07-07 8:53 ` dominiq at lps dot ens.fr
` (6 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: mikael at gcc dot gnu.org @ 2011-07-06 17:28 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #10 from Mikael Morin <mikael at gcc dot gnu.org> 2011-07-06 17:28:14 UTC ---
(In reply to comment #9)
> (In reply to comment #8)
> > + else if (mp_flag && sym->attr.flavor == FL_PROCEDURE && sym->attr.function)
> > + gfc_resolve_array_spec (sym->result->as, false);
>
> I think one could add somewhere a condition "if (sym != sym->result)";
This is contained in mp_flag :-)
> and I was wondering whether also other items like length-type parameters are
> effected. (I think, usually character lengths are shared, but I am not sure
> whether it also happens here.)
Well, it's difficult to tell by quickly (or even slowly) browsing through the
function.
I was supposing resolve_symbol would handle all other items in my previous
patch, but it fails unfortunately (for reasons that I have admittedly not
investigated); hence this less ambitious one, which doesn't regress at least.
For what it's worth the following variant using character lengths doesn't ICE.
I can't tell in the general case though.
module m2
COMPLEX, SAVE, ALLOCATABLE :: P(:)
contains
FUNCTION getPhaseMatrix() RESULT(PM)
CHARACTER(len=SIZE(P)) :: PM
PM="foo "
END FUNCTION
end module m2
module m
use m2
contains
SUBROUTINE gf_generateEmbPot()
CHARACTER(3) :: sigma2
sigma2 = TRIM(getPhaseMatrix())
END SUBROUTINE
end module m
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (9 preceding siblings ...)
2011-07-06 17:28 ` mikael at gcc dot gnu.org
@ 2011-07-07 8:53 ` dominiq at lps dot ens.fr
2011-07-07 20:59 ` mikael at gcc dot gnu.org
` (5 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: dominiq at lps dot ens.fr @ 2011-07-07 8:53 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #11 from Dominique d'Humieres <dominiq at lps dot ens.fr> 2011-07-07 08:53:24 UTC ---
The patch in comment #8 fixes the ICEs for the test cases without disturbing my
pet bugs and without regression.
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (10 preceding siblings ...)
2011-07-07 8:53 ` dominiq at lps dot ens.fr
@ 2011-07-07 20:59 ` mikael at gcc dot gnu.org
2011-07-07 21:04 ` mikael at gcc dot gnu.org
` (4 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: mikael at gcc dot gnu.org @ 2011-07-07 20:59 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #12 from Mikael Morin <mikael at gcc dot gnu.org> 2011-07-07 20:58:19 UTC ---
Author: mikael
Date: Thu Jul 7 20:58:16 2011
New Revision: 176011
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=176011
Log:
2011-07-07 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/49648
* resolve.c (resolve_symbol): Force resolution of function result's
array specification.
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/resolve.c
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (11 preceding siblings ...)
2011-07-07 20:59 ` mikael at gcc dot gnu.org
@ 2011-07-07 21:04 ` mikael at gcc dot gnu.org
2011-07-07 21:13 ` mikael at gcc dot gnu.org
` (3 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: mikael at gcc dot gnu.org @ 2011-07-07 21:04 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #13 from Mikael Morin <mikael at gcc dot gnu.org> 2011-07-07 21:03:27 UTC ---
Author: mikael
Date: Thu Jul 7 21:03:25 2011
New Revision: 176012
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=176012
Log:
2011-07-07 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/49648
* gfortran.dg/result_in_spec_4.f90: New test.
Added:
trunk/gcc/testsuite/gfortran.dg/result_in_spec_4.f90
Modified:
trunk/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (12 preceding siblings ...)
2011-07-07 21:04 ` mikael at gcc dot gnu.org
@ 2011-07-07 21:13 ` mikael at gcc dot gnu.org
2011-07-18 20:32 ` mikael at gcc dot gnu.org
` (2 subsequent siblings)
16 siblings, 0 replies; 18+ messages in thread
From: mikael at gcc dot gnu.org @ 2011-07-07 21:13 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
Mikael Morin <mikael at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |ASSIGNED
Last reconfirmed| |2011.07.07 21:12:19
AssignedTo|unassigned at gcc dot |mikael at gcc dot gnu.org
|gnu.org |
Ever Confirmed|0 |1
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (13 preceding siblings ...)
2011-07-07 21:13 ` mikael at gcc dot gnu.org
@ 2011-07-18 20:32 ` mikael at gcc dot gnu.org
2011-07-18 20:36 ` mikael at gcc dot gnu.org
2011-07-18 20:43 ` mikael at gcc dot gnu.org
16 siblings, 0 replies; 18+ messages in thread
From: mikael at gcc dot gnu.org @ 2011-07-18 20:32 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #14 from Mikael Morin <mikael at gcc dot gnu.org> 2011-07-18 20:31:05 UTC ---
Author: mikael
Date: Mon Jul 18 20:31:02 2011
New Revision: 176419
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=176419
Log:
2011-07-18 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/49648
* resolve.c (resolve_symbol): Force resolution of function result's
array specification.
iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
M ChangeLog
M resolve.c
Modified:
branches/gcc-4_6-branch/gcc/fortran/ChangeLog
branches/gcc-4_6-branch/gcc/fortran/resolve.c
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (14 preceding siblings ...)
2011-07-18 20:32 ` mikael at gcc dot gnu.org
@ 2011-07-18 20:36 ` mikael at gcc dot gnu.org
2011-07-18 20:43 ` mikael at gcc dot gnu.org
16 siblings, 0 replies; 18+ messages in thread
From: mikael at gcc dot gnu.org @ 2011-07-18 20:36 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
--- Comment #15 from Mikael Morin <mikael at gcc dot gnu.org> 2011-07-18 20:35:22 UTC ---
Author: mikael
Date: Mon Jul 18 20:35:18 2011
New Revision: 176422
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=176422
Log:
2011-07-18 Mikael Morin <mikael.morin@sfr.fr>
PR fortran/49648
* gfortran.dg/result_in_spec_4.f90: New test.
Added:
branches/gcc-4_6-branch/gcc/testsuite/gfortran.dg/result_in_spec_4.f90
Modified:
branches/gcc-4_6-branch/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 18+ messages in thread
* [Bug fortran/49648] ICE(segfault) with MATMUL and function-result actual argument
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
` (15 preceding siblings ...)
2011-07-18 20:36 ` mikael at gcc dot gnu.org
@ 2011-07-18 20:43 ` mikael at gcc dot gnu.org
16 siblings, 0 replies; 18+ messages in thread
From: mikael at gcc dot gnu.org @ 2011-07-18 20:43 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49648
Mikael Morin <mikael at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
--- Comment #16 from Mikael Morin <mikael at gcc dot gnu.org> 2011-07-18 20:42:41 UTC ---
(In reply to comment #14)
> iiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
>
> M ChangeLog
> M resolve.c
I couldn't help messing up the svn log somehow.
Anyway, fixed on trunk(4.7.0) and 4.6 branch (4.6.2).
^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2011-07-18 20:43 UTC | newest]
Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-07-05 17:06 [Bug fortran/49648] New: ICE(segfault) with MATHMUL and function-result actual argument burnus at gcc dot gnu.org
2011-07-05 17:15 ` [Bug fortran/49648] " burnus at gcc dot gnu.org
2011-07-05 17:31 ` burnus at gcc dot gnu.org
2011-07-05 19:01 ` burnus at gcc dot gnu.org
2011-07-05 19:47 ` burnus at gcc dot gnu.org
2011-07-05 22:52 ` burnus at gcc dot gnu.org
2011-07-06 6:44 ` [Bug fortran/49648] ICE(segfault) with MATMUL " burnus at gcc dot gnu.org
2011-07-06 14:25 ` mikael at gcc dot gnu.org
2011-07-06 15:01 ` mikael at gcc dot gnu.org
2011-07-06 16:54 ` burnus at gcc dot gnu.org
2011-07-06 17:28 ` mikael at gcc dot gnu.org
2011-07-07 8:53 ` dominiq at lps dot ens.fr
2011-07-07 20:59 ` mikael at gcc dot gnu.org
2011-07-07 21:04 ` mikael at gcc dot gnu.org
2011-07-07 21:13 ` mikael at gcc dot gnu.org
2011-07-18 20:32 ` mikael at gcc dot gnu.org
2011-07-18 20:36 ` mikael at gcc dot gnu.org
2011-07-18 20:43 ` mikael at gcc dot gnu.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).