Warning :: locally defined symbol

Warning :: locally defined symbol


I'm writing a dll program in Intel Visual Fortran 11.0.072, MS Visual studio 2005. I've written some subroutines that perform different operations that I call in the main subroutine of the dll. Under the FORTRAN 8 compiler, MS Visual Studio 2001 this worked fine. With my new settings, it still works, however, the compiler gives warnings when I make a call to a subroutine. The error message is as follows:

1>Debug\Main.obj:warning : locally defined symbol __imp__SAMPLEMLPARS imported

When I compile it twice, it works and the programm runs fine so far. However, I'd like to understand what's happening and if it could cause trouble under specific circumstances.



2 posts / 0 new
Last post
For more complete information about compiler optimizations, see our Optimization Notice.

This is a linker warning, not from the compiler. You'll get this when you have a module containing routines with DLLEXPORT directives and you also USE that module in the DLL. Sometime after version 8, we corrected the compiler to treat DLLEXPORTs in a module as DLLIMPORTs when the module is USEd, since this is the most desirable behavior. However, the linker notes that you have both imported a symbol and defined it in the same DLL and it warns you about this. The warning is harmless and can be ignored.

Retired 12/31/2016

Leave a Comment

Please sign in to add a comment. Not a member? Join today