2010-07-19 Paul Thomas <pault@gcc.gnu.org>
commitabca35418102c31d95b688897b34b9ff2688ee3d
authorpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 19 Jul 2010 18:48:44 +0000 (19 18:48 +0000)
committerpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 19 Jul 2010 18:48:44 +0000 (19 18:48 +0000)
treedcccbe076c70bfa184d4951d084dc40709a025ab
parent2259c4d55916f89cdfa0610788e0330e142cedb7
2010-07-19  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/42385
* interface.c (matching_typebound_op): Add argument for the
return of the generic name for the procedure.
(build_compcall_for_operator): Add an argument for the generic
name of an operator procedure and supply it to the expression.
(gfc_extend_expr, gfc_extend_assign): Use the generic name in
calls to the above procedures.
* resolve.c (resolve_typebound_function): Catch procedure
component calls for CLASS objects, check that the vtable is
complete and insert the $vptr and procedure components, to make
the call.
(resolve_typebound_function): The same.
* trans-decl.c (gfc_trans_deferred_vars): Do not deallocate
an allocatable scalar if it is a result.

2010-07-19  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/42385
* gfortran.dg/class_defined_operator_1.f03 : New test.

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