[Bug fortran/82783] [7/8 Regression] gfortran ICEs when compiling polymorphic function call

2017-11-06 Thread pault at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82783

Paul Thomas  changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #7 from Paul Thomas  ---
Fixed on 7-branch and trunk.

Many thanks for the report.

Paul

[Bug fortran/82783] [7/8 Regression] gfortran ICEs when compiling polymorphic function call

2017-11-05 Thread pault at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82783

--- Comment #6 from Paul Thomas  ---
Author: pault
Date: Sun Nov  5 16:56:14 2017
New Revision: 254429

URL: https://gcc.gnu.org/viewcvs?rev=254429=gcc=rev
Log:
2017-11-05  Paul Thomas  

PR fortran/81447
PR fortran/82783
* resolve.c (resolve_component): There is no need to resolve
the components of a use associated vtype.
(resolve_fl_derived): Unconditionally generate a vtable for any
module derived type, as long as the standard is F2003 or later
and it is not a vtype or a PDT template.

2017-11-05  Paul Thomas  

PR fortran/81447
* gfortran.dg/class_65.f90: New test.
* gfortran.dg/alloc_comp_basics_1.f90: Increase builtin_free
count from 18 to 21.
* gfortran.dg/allocatable_scalar_9.f90: Increase builtin_free
count from 32 to 54.
* gfortran.dg/auto_dealloc_1.f90: Increase builtin_free
count from 4 to 10.
* gfortran.dg/coarray_lib_realloc_1.f90: Increase builtin_free
count from 3 to 6. Likewise _gfortran_caf_deregister from 2 to
3, builtin_malloc from 1 to 4 and builtin_memcpy|= MEM from
2 to 5.
* gfortran.dg/finalize_28.f90: Increase builtin_free
count from 3 to 6.
* gfortran.dg/move_alloc_15.f90: Increase builtin_free and
builtin_malloc counts from 11 to 14.
* gfortran.dg/typebound_proc_27.f03: Increase builtin_free
count from 7 to 10. Likewise builtin_malloc from 12 to 15.

Added:
branches/gcc-7-branch/gcc/testsuite/gfortran.dg/class_65.f90
Modified:
branches/gcc-7-branch/gcc/fortran/resolve.c
branches/gcc-7-branch/gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f90
branches/gcc-7-branch/gcc/testsuite/gfortran.dg/allocatable_scalar_9.f90
branches/gcc-7-branch/gcc/testsuite/gfortran.dg/auto_dealloc_1.f90
branches/gcc-7-branch/gcc/testsuite/gfortran.dg/coarray_lib_realloc_1.f90
branches/gcc-7-branch/gcc/testsuite/gfortran.dg/finalize_28.f90
branches/gcc-7-branch/gcc/testsuite/gfortran.dg/move_alloc_15.f90
branches/gcc-7-branch/gcc/testsuite/gfortran.dg/typebound_proc_27.f03

[Bug fortran/82783] [7/8 Regression] gfortran ICEs when compiling polymorphic function call

2017-11-05 Thread pault at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82783

--- Comment #5 from Paul Thomas  ---
Author: pault
Date: Sun Nov  5 12:38:42 2017
New Revision: 254427

URL: https://gcc.gnu.org/viewcvs?rev=254427=gcc=rev
Log:
2017-11-05  Paul Thomas  

PR fortran/81447
PR fortran/82783
* resolve.c (resolve_component): There is no need to resolve
the components of a use associated vtype.
(resolve_fl_derived): Unconditionally generate a vtable for any
module derived type, as long as the standard is F2003 or later
and it is not a vtype or a PDT template.

2017-11-05  Paul Thomas  

PR fortran/81447
* gfortran.dg/class_65.f90: New test.
* gfortran.dg/alloc_comp_basics_1.f90: Increase builtin_free
count from 18 to 21.
* gfortran.dg/allocatable_scalar_9.f90: Increase builtin_free
count from 32 to 54.
* gfortran.dg/auto_dealloc_1.f90: Increase builtin_free
count from 4 to 10.
* gfortran.dg/coarray_lib_realloc_1.f90: Increase builtin_free
count from 3 to 6. Likewise _gfortran_caf_deregister from 2 to
3, builtin_malloc from 1 to 4 and builtin_memcpy|= MEM from
2 to 5.
* gfortran.dg/finalize_28.f90: Increase builtin_free
count from 3 to 6.
* gfortran.dg/move_alloc_15.f90: Increase builtin_free and
builtin_malloc counts from 11 to 14.
* gfortran.dg/typebound_proc_27.f03: Increase builtin_free
count from 7 to 10. Likewise builtin_malloc from 12 to 15.

Added:
trunk/gcc/testsuite/gfortran.dg/class_65.f90
Modified:
trunk/gcc/fortran/ChangeLog
trunk/gcc/fortran/resolve.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gfortran.dg/alloc_comp_basics_1.f90
trunk/gcc/testsuite/gfortran.dg/allocatable_scalar_9.f90
trunk/gcc/testsuite/gfortran.dg/auto_dealloc_1.f90
trunk/gcc/testsuite/gfortran.dg/coarray_lib_realloc_1.f90
trunk/gcc/testsuite/gfortran.dg/finalize_28.f90
trunk/gcc/testsuite/gfortran.dg/move_alloc_15.f90
trunk/gcc/testsuite/gfortran.dg/typebound_proc_27.f03

[Bug fortran/82783] [7/8 Regression] gfortran ICEs when compiling polymorphic function call

2017-11-01 Thread pault at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82783

--- Comment #4 from Paul Thomas  ---
This is fixed by the patch for PR81447, which I am just about to submit.

Cheers

Paul

[Bug fortran/82783] [7/8 Regression] gfortran ICEs when compiling polymorphic function call

2017-11-01 Thread kargl at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82783

kargl at gcc dot gnu.org changed:

   What|Removed |Added

 CC||kargl at gcc dot gnu.org

--- Comment #3 from kargl at gcc dot gnu.org ---
(In reply to Dominique d'Humieres from comment #2)
> AFAICT the ICE disappears if the files are put in a single one.

Yep.  I played with this a little yesterday.  This suggests
that when a module is saved and an attribute for a polymorphic
entity isn't saved correctly or re-read from the module
correctly.

[Bug fortran/82783] [7/8 Regression] gfortran ICEs when compiling polymorphic function call

2017-11-01 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82783

Dominique d'Humieres  changed:

   What|Removed |Added

   Priority|P3  |P4

--- Comment #2 from Dominique d'Humieres  ---
AFAICT the ICE disappears if the files are put in a single one.

[Bug fortran/82783] [7/8 Regression] gfortran ICEs when compiling polymorphic function call

2017-11-01 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82783

Martin Liška  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
  Known to work||6.4.0
   Keywords||ice-on-valid-code
   Last reconfirmed||2017-11-01
 CC||marxin at gcc dot gnu.org,
   ||pault at gcc dot gnu.org
 Ever confirmed|0   |1
Summary|gfotran ICEs when compiling |[7/8 Regression] gfortran
   |polymorphic function call   |ICEs when compiling
   ||polymorphic function call
   Target Milestone|--- |7.3
  Known to fail||7.2.0, 8.0

--- Comment #1 from Martin Liška  ---
Confirmed, started with r241450.