- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
currently running Intel(R) Visual Fortran Compiler Professional for applications running on IA-32, Version 11.1
I have multiple DLLs. Each DLL has a common block with the same name. I do not DLLEXPORT these common blocks. The common block is used by functions to determine their calling frequency which they then use in time based calculations. Some functions run at a 50 ms time period, some 100 ms, some 200 ms. I know, global variables are bad. However, these functions are not maintained by me and are used in other applications. DLL functions are run in their own threads in parallel. i.e. all functions in DLL 1 are run in thread 1, all functions in DLL 2 are run in thread 2 etc. The problem is that the common block is shared between the DLLs. I did not think they would be because I did not DLLEXPORT the common block. Anyway way to make the common block private to the DLL and or thread? Also, what's up with the Intel Premium Support Web Site. It appears to be down. I can't log in.
Thanks
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Premier Support website has been hobbled by an incomplete upgrade cycle for nearly 2 weeks. I'm sorry but not surprised to hear that it's affecting customers as well.
If you wish to hide data within a dll, I suppose module facilities with private would be more suitable.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I can't use PRIVATE. I would then have to edit all the functions in order to pass the required values and I don't have the rights to do that. As I mentioned above, these sources are maintained and used elsewhere. Right now, the functions take no arguments. I have hundreds of sources files and they all reference the common block which needs to be global within the DLL/thread only.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We've identified an issue with Intel Premier Support when customers try to log on with a userid that doesn't have access to Premier Support. Instead of a useful error message, they got a redirect to a non-existent server. That particular issue has been fixed. However, I looked up your account and it seemed ok, so I am not sure what the issue is. Please use "Send Author A Message" and tell me what user ID you were using.
COMMON blocks in different DLLs should be independent if not DLLEXPORTed (and then imported in the other DLLs). But different threads will all see the same COMMON in a given DLL. Are you able to put together a small example showing what you're seeing?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
After creating a demo project and further examing my code, it looks the behaviour displayed was a programming error on my part. The Intel Fortran behaves correctly as documented. Sorry for wasting people's time. Thank you for the quick responses. I can now also log onto Intel Premium Support
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Very good! Thanks for the update.

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page