(j3.2006) TYPE(*) and scalars

Rasmussen, Craig E rasmussn
Thu Mar 22 10:55:06 EDT 2012


On Mar 21, 2012, at 5:11 PM, Bill Long wrote:

> 
> 
> On 3/21/12 5:58 PM, Rasmussen, Craig E wrote:
>> 
>> Bill,
>> 
>> I don't understand.  It seems that you are contradicting Reinhold as he says you can't use a generic interface (as you do in your foo example).
> 
> No, Reinhold said ( I think ) that you can use the generic interface if you do a lot of typing.  I'm agreeing with him on that. Both the "can" and "lot".

It's not feasible to do a "lot" because of PMPI (see below).

> 
>> Also the fact that two different procedures have the same binding name seems problematic.
> 
> Why? That seems exactly what you need.  There is only one of the C functions in the MPI library that you want to call in each of the cases.

You would think, right?  Except that we have to support the PMPI portion of the standard which requires that the interfaces be implementable in Fortran.

> 
>> Suppose you try to implement bar1 and bar2 in Fortran, how does the C programmer have access  to either routine?
> 
> The point here is that you never actually implement bar1 and bar2.  C programmers would not access these routines - they would take the easy way and call the C functions directly like they always have.
> 
>> Especially since the symbol would have the same name and would lead to a conflict.
>> 
> 
> No conflict.  Aleks argued for this capability for some time, and exactly for this reason.

Yea, I remember his arguments.  Thanks Aleks, though it doesn't help us here.  As far as I can see, the only option for gfortran is to wait until they implement assumed rank. :-(

-craig






More information about the J3 mailing list