diff options
author | Janus Weil <janus@gcc.gnu.org> | 2009-07-25 13:56:35 +0200 |
---|---|---|
committer | Janus Weil <janus@gcc.gnu.org> | 2009-07-25 13:56:35 +0200 |
commit | 90661f261cdf7b2349d403c4669e0107faad310e (patch) | |
tree | 5f96889c85c7f39e41827b1e710416e711dd6077 /gcc/tree-complex.c | |
parent | 330b922f19394dccb7f3d00ed9dd0d4223787a28 (diff) | |
download | gcc-90661f261cdf7b2349d403c4669e0107faad310e.zip gcc-90661f261cdf7b2349d403c4669e0107faad310e.tar.gz gcc-90661f261cdf7b2349d403c4669e0107faad310e.tar.bz2 |
re PR fortran/39630 ([F03] Procedure Pointer Components)
2009-07-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/39630
* decl.c (match_ppc_decl): Implement the PASS attribute for procedure
pointer components.
(match_binding_attributes): Ditto.
* gfortran.h (gfc_component): Add member 'tb'.
(gfc_typebound_proc): Add member 'ppc' and make 'pass_arg' const.
* module.c (MOD_VERSION): Bump module version.
(binding_ppc): New string constants.
(mio_component): Only use formal args if component is a procedure
pointer and add 'tb' member.
(mio_typebound_proc): Include pass_arg and take care of procedure
pointer components.
* resolve.c (update_arglist_pass): Add argument 'name' and take care of
optional arguments.
(extract_ppc_passed_object): New function, analogous to
extract_compcall_passed_object, but for procedure pointer components.
(update_ppc_arglist): New function, analogous to
update_compcall_arglist, but for procedure pointer components.
(resolve_typebound_generic_call): Added argument to update_arglist_pass.
(resolve_ppc_call, resolve_expr_ppc): Take care of PASS attribute.
(resolve_fl_derived): Check the PASS argument for procedure pointer
components.
* symbol.c (verify_bind_c_derived_type): Reject procedure pointer
components in BIND(C) types.
2009-07-25 Janus Weil <janus@gcc.gnu.org>
PR fortran/39630
* gfortran.dg/proc_ptr_comp_3.f90: Modified.
* gfortran.dg/proc_ptr_comp_pass_1.f90: New.
* gfortran.dg/proc_ptr_comp_pass_2.f90: New.
* gfortran.dg/proc_ptr_comp_pass_3.f90: New.
* gfortran.dg/proc_ptr_comp_pass_4.f90: New.
* gfortran.dg/proc_ptr_comp_pass_5.f90: New.
* gfortran.dg/typebound_call_10.f03: New.
From-SVN: r150078
Diffstat (limited to 'gcc/tree-complex.c')
0 files changed, 0 insertions, 0 deletions