[Bug fortran/30531] allocatable component and intent(out) yield ICE in fold_convert

2007-03-18 Thread pault at gcc dot gnu dot org


--- Comment #11 from pault at gcc dot gnu dot org  2007-03-18 15:01 ---
Subject: Bug 30531

Author: pault
Date: Sun Mar 18 15:00:55 2007
New Revision: 123037

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=123037
Log:
2007-03-18  Paul Thomas  <[EMAIL PROTECTED]>

PR fortran/30531
PR fortran/31086
* symbo.c : Add gfc_derived_types.
(gfc_free_dt_list): Free derived type list gfc_derived_types.
(gfc_free_namespace): Remove call to gfc_free_dt_list.
(gfc_symbol_done_2): Call  gfc_free_dt_list.
* gfortran.h : Declare gfc_derived_types to be external. Remove
derived types field from gfc_namespace.
* resolve.c (resolve_fl_derived): Refer to gfc_derived types
rather than namespace derived_types.
(resolve_fntype): Remove special treatment for module
derived type functions.
* trans-types.c (gfc_get_derived_type): Remove search for like
derived types.  Finish by copying back end declaration to like
derived types in the derived type list gfc_derived_types.

2007-03-18  Paul Thomas  <[EMAIL PROTECTED]>

PR fortran/30531
* gfortran.dg/used_types_14.f90: New test.

PR fortran/31086
* gfortran.dg/used_types_15.f90: New test.

Added:
trunk/gcc/testsuite/gfortran.dg/used_types_14.f90
trunk/gcc/testsuite/gfortran.dg/used_types_15.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/gfortran.h
trunk/gcc/fortran/resolve.c
trunk/gcc/fortran/symbol.c
trunk/gcc/fortran/trans-types.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug fortran/30531] allocatable component and intent(out) yield ICE in fold_convert

2007-03-10 Thread patchapp at dberlin dot org


--- Comment #10 from patchapp at dberlin dot org  2007-03-10 12:55 ---
Subject: Bug number PR30531

A patch for this bug has been added to the patch tracker.
The mailing list url for the patch is
http://gcc.gnu.org/ml/gcc-patches/2007-03/msg00602.html


-- 


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



[Bug fortran/30531] allocatable component and intent(out) yield ICE in fold_convert

2007-03-08 Thread paulthomas2 at wanadoo dot fr


--- Comment #9 from paulthomas2 at wanadoo dot fr  2007-03-08 18:12 ---
Subject: Re:  allocatable component and intent(out) yield
 ICE in fold_convert

Daniel,
> --- Comment #8 from dfranke at gcc dot gnu dot org  2007-03-08 16:36 
> ---
> Paul, could you have a look at PR31086? I just filed it before I had a look
> here. It may be a dupe, but if so, with a different testcase ...
>   
I suspect that it is indeed a duplicate - of pr30531.  I'll take a look 
at both this weekend.

Thanks for bringing it to my attention.  As it happens, one of my 
Bugzilla searches includes your name as reporter - I find that you are 
one of those that consistently provide humdingers:)

Paul


-- 


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



[Bug fortran/30531] allocatable component and intent(out) yield ICE in fold_convert

2007-03-08 Thread dfranke at gcc dot gnu dot org


--- Comment #8 from dfranke at gcc dot gnu dot org  2007-03-08 16:36 ---
Paul, could you have a look at PR31086? I just filed it before I had a look
here. It may be a dupe, but if so, with a different testcase ...


-- 

dfranke at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||dfranke at gcc dot gnu dot
   ||org


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



[Bug fortran/30531] allocatable component and intent(out) yield ICE in fold_convert

2007-02-22 Thread pault at gcc dot gnu dot org


--- Comment #7 from pault at gcc dot gnu dot org  2007-02-22 20:36 ---
(In reply to comment #6)
> Created an attachment (id=12987)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12987&action=view) [edit]
> This fixes the PR
> 
> This is just now regtesting - I am pretty sure that it is OK.  It will take a
> day or two to feed into the loop.
> 
> Paul
> 

This patch fixes the problem but does not regtest - needs thought.

Paul


-- 


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



[Bug fortran/30531] allocatable component and intent(out) yield ICE in fold_convert

2007-01-31 Thread pault at gcc dot gnu dot org


--- Comment #6 from pault at gcc dot gnu dot org  2007-01-31 14:18 ---
Created an attachment (id=12987)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=12987&action=view)
This fixes the PR

This is just now regtesting - I am pretty sure that it is OK.  It will take a
day or two to feed into the loop.

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


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



[Bug fortran/30531] allocatable component and intent(out) yield ICE in fold_convert

2007-01-31 Thread pault at gcc dot gnu dot org


--- Comment #5 from pault at gcc dot gnu dot org  2007-01-31 09:26 ---
Dear All,

This is yet another derived type association problem in
trans-types.c(gfc_get_derived_type). If you insert a "use foo_type_mod" in
module foo_mod, the problem goes away.  I believe the INTENT(OUT) changes the
order in which the different references to type foo_type are visited; I believe
one of them, most likely in the interface, is not being registered in the
namespace.

I will investigate further - it's a matter o perspiration now, rather than
inspiration.

Paul


-- 


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



[Bug fortran/30531] allocatable component and intent(out) yield ICE in fold_convert

2007-01-22 Thread sfilippone at uniroma2 dot it


--- Comment #4 from sfilippone at uniroma2 dot it  2007-01-22 14:43 ---
(In reply to comment #3)
> Slightly reduced testcase below. It's all about allocatable components and
> intent(out). Remove one or the other, and it's gone. Adding Erik Edeelman and
> Paul Thomas (although he does not have time now) to the CC list.
> 
Intent(out) was also the ultimate source of PR 30202...is this related? 


-- 


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



[Bug fortran/30531] allocatable component and intent(out) yield ICE in fold_convert

2007-01-22 Thread fxcoudert at gcc dot gnu dot org


--- Comment #3 from fxcoudert at gcc dot gnu dot org  2007-01-22 10:16 
---
Slightly reduced testcase below. It's all about allocatable components and
intent(out). Remove one or the other, and it's gone. Adding Erik Edeelman and
Paul Thomas (although he does not have time now) to the CC list.

$ cat a.f90
module foo_type_mod
  type foo_type
 integer, allocatable :: md(:)
  end type foo_type
end module foo_type_mod

module foo_mod

  interface
subroutine foo_initvg(foo_a)
  use foo_type_mod
  Type(foo_type), intent(out) :: foo_a
end subroutine foo_initvg
  end interface

contains

  subroutine foo_ext(foo_a)
use foo_type_mod
Type(foo_type) :: foo_a

call foo_initvg(foo_a)
  end subroutine foo_ext

end module foo_mod
$ gfortran a.f90 -c
a.f90: In function ‘foo_ext’:
a.f90:18: internal compiler error: in fold_convert, at fold-const.c:2154


-- 

fxcoudert at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2007-01-22 10:16:38
   date||
Summary|ICE  in fold_convert|allocatable component and
   ||intent(out) yield ICE in
   ||fold_convert


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