This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/81447] [7/8] gfortran fails to recognize the exact dynamic type of a polymorphic entity that was allocated in a external procedure
- From: "pault at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Sun, 05 Nov 2017 12:39:13 +0000
- Subject: [Bug fortran/81447] [7/8] gfortran fails to recognize the exact dynamic type of a polymorphic entity that was allocated in a external procedure
- Auto-submitted: auto-generated
- References: <bug-81447-4@http.gcc.gnu.org/bugzilla/>
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81447
--- Comment #3 from Paul Thomas <pault at gcc dot gnu.org> ---
Author: pault
Date: Sun Nov 5 12:38:42 2017
New Revision: 254427
URL: https://gcc.gnu.org/viewcvs?rev=254427&root=gcc&view=rev
Log:
2017-11-05 Paul Thomas <pault@gcc.gnu.org>
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 <pault@gcc.gnu.org>
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