[Patch, Fortran] PR40427: [F03] Procedure Pointer Components with OPTIONAL arguments

Janus Weil janus@gcc.gnu.org
Wed Jun 24 08:43:00 GMT 2009


>> The patch is regression-tested on x86_64-unknown-linux-gnu.
>> Ok for trunk?
>
> As you have modified what is put into the .mod files, you need
> to bump the module version:
>
>   #define MOD_VERSION "0"

Ah, good point. Seems like I'm the first one to do this since the
MOD_VERSION was introduced.
(Updated patch attached.)

> Otherwise it looks OK to me.

I'll take this as an approval and commit later today.

Cheers,
Janus


2009-06-24  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40427
	* gfortran.h (gfc_component): New member 'formal_ns'.
	(gfc_copy_formal_args_ppc,void gfc_ppc_use): New.
	* interface.c (gfc_ppc_use): New function, analogous to
	gfc_procedure_use, but for procedure pointer components.
	* module.c (MOD_VERSION): Bump module version.
	(mio_component): Treat formal arguments.
	(mio_formal_arglist): Changed argument from gfc_symbol to
	gfc_formal_arglist.
	(mio_symbol): Changed argument of mio_formal_arglist.
	* resolve.c (resolve_ppc_call,resolve_expr_ppc): Call gfc_ppc_use,
	to check actual arguments and treat formal args correctly.
	(resolve_fl_derived): Copy formal args of procedure pointer components
	from their interface.
	* symbol.c (gfc_copy_formal_args_ppc): New function, analogous to
	gfc_copy_formal_args, but for procedure pointer components.


2009-06-24  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/40427
	* gfortran.dg/proc_ptr_comp_11.f90: New.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr40427.diff
Type: text/x-patch
Size: 9739 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20090624/c0164edd/attachment.bin>


More information about the Fortran mailing list