This is the mail archive of the
fortran@gcc.gnu.org
mailing list for the GNU Fortran project.
Re: Type-bound procedure and procedure pointer component calls
- From: "Janus Weil" <jaydub66 at googlemail dot com>
- To: "Daniel Kraft" <d at domob dot eu>
- Cc: "Fortran List" <fortran at gcc dot gnu dot org>
- Date: Tue, 26 Aug 2008 18:03:06 +0200
- Subject: Re: Type-bound procedure and procedure pointer component calls
- Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to :subject:cc:in-reply-to:mime-version:content-type :content-transfer-encoding:content-disposition:references; bh=4ehIuijX2dKisAunPVzinCxROJAM/LP893CkAlADJJc=; b=tlm1I0WVY5zNCwWyULwvp0DXYJO9G3D0WKku3K7JEuOKUufy2DI78YBqkr8IElhHlj zvESPUv3uTgBB6iK7uC0sYsZ3mSc+yZKImgMS7dQAqBqjnkuOSMqUx5HlwpgIpuj8q4H crUD3eeAQBfJZJ7/4XN0KJJMt+zrdyp58cVMQ=
- Domainkey-signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=message-id:date:from:to:subject:cc:in-reply-to:mime-version :content-type:content-transfer-encoding:content-disposition :references; b=WsOw0Ov1BO1rYIKfwgbK+suBqoyFteN4snFyRY+/yKRCHNe4jHXlxSLvm15bnOTLg1 x4UGxR2VUW2WHUoqvWhp+ROKrlqwJG8rgbr0qgXiXktZbXeew7F8KDuskB4WQN2AxAsd xZMaU08SOeeUQNp+3gciYI6KhdNdz0fRF6LV8=
- References: <48B19E34.7050709@domob.eu> <48B3241A.8080506@domob.eu> <48B3D4E9.3040200@domob.eu>
2008/8/26 Daniel Kraft <d@domob.eu>:
> here's the promised experimental patch implementing the approach sketched
> below. It handles basic calls to NOPASS type-bound procedures (the
> typebound_call_1.f03 test included in the patch).
>
> Apart from this, is it of course quite rough; no module IO, no passed-object
> handling and nearly no error checking for calls, no dynamic dispatch (of
> course)... But I hope you get the idea of how the general design could be.
>
> Janus, what do you think in respect to PPCs? I think it should be "rather"
> easy to extend the current patch to support those:
>
> Extend gfc_match_varspec and the gfc_ref structure to match them and store
> their data and then hook either into the resolving methods to handle your
> implementation or make the static-resolving conditional and handle
> EXEC_COMPCALL/EXPR_COMPCALL in the PPC case during trans somehow.
>
> What do you think?
I haven't looked at your patch in great detail, but at first glance it
looks fine. Since you chose to start with a static implementation of
TBPs, I think we have to keep things pretty much separated at
resolution and translation stage. Therefore I will introduce another
EXEC_CALL_PPC and EXPR_PPC (or similar) for the handling of procedure
pointer components, hoping that these will not interfere too much
neither with your implementation of TBPs nor with the existing
ordinary subroutine calls. I will see how far I get ...
Cheers,
Janus