diff options
author | Daniel Kraft <d@domob.eu> | 2009-12-08 12:39:20 +0100 |
---|---|---|
committer | Daniel Kraft <domob@gcc.gnu.org> | 2009-12-08 12:39:20 +0100 |
commit | 41a394bbf8d47ae58aad6b9068cd6f0f27cc2f2f (patch) | |
tree | 97e379b084f6fe3298f9879b4b2d00a044c7693f /gcc/fortran/symbol.c | |
parent | 72d099cb27a5fedea22e2d69ce8d03e71120fddc (diff) | |
download | gcc-41a394bbf8d47ae58aad6b9068cd6f0f27cc2f2f.zip gcc-41a394bbf8d47ae58aad6b9068cd6f0f27cc2f2f.tar.gz gcc-41a394bbf8d47ae58aad6b9068cd6f0f27cc2f2f.tar.bz2 |
re PR fortran/41177 (Wrong base-object checks for type-bound procedures)
2008-12-08 Daniel Kraft <d@domob.eu>
PR fortran/41177
* gfortran.dg/typebound_proc_4.f03: Remove check for wrong error.
* gfortran.dg/typebound_proc_13.f03: New test.
2008-12-08 Daniel Kraft <d@domob.eu>
PR fortran/41177
* gfortran.h (struct symbol_attribute): New flag `class_pointer'.
* symbol.c (gfc_build_class_symbol): Set the new flag.
* resolve.c (update_compcall_arglist): Remove wrong check for
non-scalar base-object.
(check_typebound_baseobject): Add the correct version here as well
as some 'not implemented' message check in the old case.
(resolve_typebound_procedure): Check that the passed-object dummy
argument is scalar, non-pointer and non-allocatable as it should be.
From-SVN: r155086
Diffstat (limited to 'gcc/fortran/symbol.c')
-rw-r--r-- | gcc/fortran/symbol.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/fortran/symbol.c b/gcc/fortran/symbol.c index 6dd0a8a..08477c4 100644 --- a/gcc/fortran/symbol.c +++ b/gcc/fortran/symbol.c @@ -4681,6 +4681,7 @@ gfc_build_class_symbol (gfc_typespec *ts, symbol_attribute *attr, c->ts.type = BT_DERIVED; c->attr.access = ACCESS_PRIVATE; c->ts.u.derived = ts->u.derived; + c->attr.class_pointer = attr->pointer; c->attr.pointer = attr->pointer || attr->dummy; c->attr.allocatable = attr->allocatable; c->attr.dimension = attr->dimension; |