Intel® Fortran Compiler
Build applications that can scale for the future with optimized code designed for Intel® Xeon® and compatible processors.

CVF/IVF runtime compatibility

Martin__Paul
New Contributor I
289 Views

Steve,

In your article "Migrating from Compaq* Visual Fortran" (http://software.intel.com/en-us/articles/migrating-from-compaq-visual-fortran/) you mentioned that you can "use CVF-built dynamic link libraries (DLLs) with applications compiled with the Intel Visual Fortran Compiler, as long as you do not try to share input/ output units across the two environments." By input/output units do you mean passing arguments to exported dll funtions? If so, are there any exceptions to this rule (e.g. scalar variables, or pointers to scalar variables)? I understand that assumed-shape arrays are handled differently by CVF and IVF (http://software.intel.com/en-us/forums/showthread.php?t=68419) but wasn't sure if some types are compatible and may be used safely.

Along similar lines, are there any major restrictions in the types that can be passed rom a Fortran binary to a dll written in another language?

Many thanks for your help.

0 Kudos
1 Reply
Steven_L_Intel1
Employee
289 Views
I meant I/O such as READ and WRITE. If you open a unit in IVF, CVF can't see it, and vice versa. The issue with types is when the called routine accepts assumed-shape arrays, with dimension (:). You can pass scalar variables and arrays with explicit shape. Do not pass POINTER variables.
0 Kudos
Reply