Quantcast
Channel: Fortran
Viewing all articles
Browse latest Browse all 3108

Variable import from DLL broken by upgrade

$
0
0

When I rebuild my code using Visual Fortran Composer XE 2013 SP1 Update 4, previously working (using version 13.0.1.119) imports of variables that are exported from a DLL (created in ObjectAda, if that matters) no longer work.  Imports of procedures still work, although it seems that I no longer need to include a DLLIMPORT directive for this.

Here's the code:

real(kind=8) :: DLLFunc

real(kind=8) :: LocalDouble

!DEC$ ATTRIBUTES DLLIMPORT:: DLLFunc

!DEC$ ATTRIBUTES DLLIMPORT:: DLLProc

!DEC$ ATTRIBUTES DLLIMPORT:: LocalDouble

When I rebuild using XE 2013 SP1 Update 4, I can access DLLFunc (a function) and DLLProc (a subroutine) just fine (although it also works now when I leave out the DLLIMPORT directives). However, I get the following compilation error for the imported variable LocalDouble:

error #6406: Conflicting attributes or multiple declaration of name. [LOCALDOUBLE]

I'd appreciate any thoughts regarding what I need to update to get this back in working order, and perhaps some information regarding what changes have been made to compiler support of DLLIMPORT.


Viewing all articles
Browse latest Browse all 3108

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>