2010-03-12 Paul Thomas <pault@gcc.gnu.org>
commitae925cc0be9d082b4556afb102e0c255a1f8ae1d
authorpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 Mar 2010 22:00:52 +0000 (12 22:00 +0000)
committerpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 12 Mar 2010 22:00:52 +0000 (12 22:00 +0000)
tree4da09ecc18dc44b9841a498d42901e7f648b87dd
parent54468f762c9fdb0babd1817c8afe143cf59e4bda
2010-03-12  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/43291
PR fortran/43326
* resolve.c (resolve_compcall): Add new boolean dummy argument
'class_members'. Only resolve expression at end if false.
Remove redundant, static variable 'class_object'.
(check_class_members): Add extra argument to call of
resolve_compcall.
(resolve_typebound_function): Renamed resolve_class_compcall.
Do all the detection of class references here. Correct calls to
resolve_compcall for extra argument.
(resolve_typebound_subroutine): resolve_class_typebound_call
renamed. Otherwise same as resolve_typebound_function.
(gfc_resolve_expr): Call resolve_typebound_function.
(resolve_code): Call resolve_typebound_subroutine.

2010-03-12  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/43291
PR fortran/43326
* gfortran.dg/dynamic_dispatch_7.f03: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@157411 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/fortran/ChangeLog
gcc/fortran/resolve.c
gcc/testsuite/ChangeLog
gcc/testsuite/gfortran.dg/dynamic_dispatch_7.f03 [new file with mode: 0644]