From: James Tursa on
Does anyone know which version of Intel Fortran was the first one to
have C interop capability?

James Tursa
From: Richard Maine on
James Tursa <aclassyguywithaknotac(a)hotmail.com> wrote:

> Does anyone know which version of Intel Fortran was the first one to
> have C interop capability?

I don't know the answer to your question, but I suspect that there are 2
different answers depending on exactly what you mean by the question.
Namely

1. If you mean C interop capability as a general term, I suspect that
goes back a long ways, perhaps to the first version.

2. You might mean specifically support of the f2003 ISO_C_BINDING
module, in which case, I still suspect there might be two different
answers depending on whether you mean the first version where they
included anything from that module or the first version where they fully
supported everything in it.

I wouldn't be shocked if full support of everything in it might still be
missing. After all, that module is an f2003 feature and it includes bits
that depend on other f2003 features. F2003 procedure pointers come to
mind. I don't recall whether Intel Fortran yet has f2003 procedure
pointers, but if it doesn't, then it can't very well be said to fully
support everything in the module.

This relates to my plaint in a thread a while back where I expressed
unhappiness with recent directions in Fortran standardization - in
particular the notion, expressed rather strongly by some (well at least
one, and I assume he isn't alone) proponents, that it is a collection of
features for vendors to pick from. I think that there are integration
matters that make it far harder to be sure of exactly what one is
talking about if one cites individual features instead of the whole
standard.

I can easily imagine an f95 vendor claiming to support the ISO_C_BINDING
module, but meaning only those parts of it that fit with the rest of his
compiler, which might be different from the impression that such a claim
might give to a user. Part of the reason that C interop was not done as
an f95 TR was that it didn't separate out cleanly enough as a standalone
feature; it has some clear standalone parts, but other things end up
interacting a bit much with the rest of the language. It was originally
proposed as am f95 TR, but that didn't work out (for several reasons,
but this was one).

--
Richard Maine | Good judgment comes from experience;
email: last name at domain . net | experience comes from bad judgment.
domain: summertriangle | -- Mark Twain
From: Steve Lionel on
On 12/11/2009 6:55 PM, James Tursa wrote:
> Does anyone know which version of Intel Fortran was the first one to
> have C interop capability?

10.0 was the first, though not everything worked right in that version.
If you have specific questions, please ask in our user forum (link below).

--
Steve Lionel
Developer Products Division
Intel Corporation
Nashua, NH

For email address, replace "invalid" with "com"

User communities for Intel Software Development Products
http://software.intel.com/en-us/forums/
Intel Software Development Products Support
http://software.intel.com/sites/support/
My Fortran blog
http://www.intel.com/software/drfortran
From: James Tursa on
On Fri, 11 Dec 2009 21:15:29 -0500, Steve Lionel
<steve.lionel(a)intel.invalid> wrote:

>On 12/11/2009 6:55 PM, James Tursa wrote:
>> Does anyone know which version of Intel Fortran was the first one to
>> have C interop capability?
>
>10.0 was the first, though not everything worked right in that version.
>If you have specific questions, please ask in our user forum (link below).

At this time I was mainly interested in the C_LOC() and C_F_POINTER()
functions (per my earlier thread), but also have a general interest in
learning/using other features as well. I will try the links you
provided. Thanks.

James Tursa
From: Steve Lionel on
On 12/13/2009 12:56 PM, James Tursa wrote:

> At this time I was mainly interested in the C_LOC() and C_F_POINTER()
> functions (per my earlier thread), but also have a general interest in
> learning/using other features as well. I will try the links you
> provided. Thanks.

Those two worked in 10.0. Procedure pointers, however, were not
introduced until version 11.0.

--
Steve Lionel
Developer Products Division
Intel Corporation
Nashua, NH

For email address, replace "invalid" with "com"

User communities for Intel Software Development Products
http://software.intel.com/en-us/forums/
Intel Software Development Products Support
http://software.intel.com/sites/support/
My Fortran blog
http://www.intel.com/software/drfortran