mirror of git://gcc.gnu.org/git/gcc.git
re PR fortran/64589 ([OOP] Linking error due to undefined integer symbol with unlimited polymorphism)
gcc/testsuite/ChangeLog: 2015-07-13 Andre Vehreschild <vehre@gcc.gnu.org> PR fortran/64589 * gfortran.dg/pr64589.f90: New test. gcc/fortran/ChangeLog: 2015-07-13 Andre Vehreschild <vehre@gcc.gnu.org> PR fortran/64589 * class.c (find_intrinsic_vtab): Put/Search vtabs for intrinsic types in the top-level namespace. From-SVN: r225730
This commit is contained in:
parent
2d87c1d472
commit
63631f7d15
|
|
@ -1,3 +1,9 @@
|
||||||
|
2015-07-13 Andre Vehreschild <vehre@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR fortran/64589
|
||||||
|
* class.c (find_intrinsic_vtab): Put/Search vtabs for intrinsic
|
||||||
|
types in the top-level namespace.
|
||||||
|
|
||||||
2015-07-12 Aldy Hernandez <aldyh@redhat.com>
|
2015-07-12 Aldy Hernandez <aldyh@redhat.com>
|
||||||
|
|
||||||
* trans-stmt.c: Fix double word typos.
|
* trans-stmt.c: Fix double word typos.
|
||||||
|
|
|
||||||
|
|
@ -2511,10 +2511,8 @@ find_intrinsic_vtab (gfc_typespec *ts)
|
||||||
|
|
||||||
sprintf (name, "__vtab_%s", tname);
|
sprintf (name, "__vtab_%s", tname);
|
||||||
|
|
||||||
/* Look for the vtab symbol in various namespaces. */
|
/* Look for the vtab symbol in the top-level namespace only. */
|
||||||
gfc_find_symbol (name, gfc_current_ns, 0, &vtab);
|
gfc_find_symbol (name, ns, 0, &vtab);
|
||||||
if (vtab == NULL)
|
|
||||||
gfc_find_symbol (name, ns, 0, &vtab);
|
|
||||||
|
|
||||||
if (vtab == NULL)
|
if (vtab == NULL)
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,8 @@
|
||||||
|
2015-07-13 Andre Vehreschild <vehre@gcc.gnu.org>
|
||||||
|
|
||||||
|
PR fortran/64589
|
||||||
|
* gfortran.dg/pr64589.f90: New test.
|
||||||
|
|
||||||
2015-07-13 Renlin Li <renlin.li@arm.com>
|
2015-07-13 Renlin Li <renlin.li@arm.com>
|
||||||
|
|
||||||
PR rtl/66556
|
PR rtl/66556
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,30 @@
|
||||||
|
! { dg-do compile }
|
||||||
|
! Just need to check if compiling and linking is possible.
|
||||||
|
!
|
||||||
|
! Check that the _vtab linking issue is resolved.
|
||||||
|
! Contributed by Damian Rouson <damian@sourceryinstitute.org>
|
||||||
|
|
||||||
|
module m
|
||||||
|
contains
|
||||||
|
subroutine fmt()
|
||||||
|
class(*), pointer :: arg
|
||||||
|
select type (arg)
|
||||||
|
type is (integer)
|
||||||
|
end select
|
||||||
|
end subroutine
|
||||||
|
end module
|
||||||
|
|
||||||
|
program p
|
||||||
|
call getSuffix()
|
||||||
|
contains
|
||||||
|
subroutine makeString(arg1)
|
||||||
|
class(*) :: arg1
|
||||||
|
select type (arg1)
|
||||||
|
type is (integer)
|
||||||
|
end select
|
||||||
|
end subroutine
|
||||||
|
subroutine getSuffix()
|
||||||
|
call makeString(1)
|
||||||
|
end subroutine
|
||||||
|
end
|
||||||
|
|
||||||
Loading…
Reference in New Issue