- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Who or what is behind warnings such as "#5436: Overlapping storage initializations encountered with .T1386__dv_template_V$749", and why are they/it picking mercilessly on my deferred length allocatable character variables?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Normally that warning happens only for DATA statements that try to initialize the same element of an array more than once. If you're seeing it for compiler-generated temps, that's a compiler bug. The Intel folks would like you to submit a sample program through the Service Portal.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Steve Lionel (Ret.) wrote:
Normally that warning happens only for DATA statements that try to initialize the same element of an array more than once. If you're seeing it for compiler-generated temps, that's a compiler bug. The Intel folks would like you to submit a sample program through the Service Portal.
IanH didn't give any details but I presume the warning about "#5436: Overlapping storage .." was noticed with compiler 18.0 BETA. For that is my experience, I do not get the warnings with compiler 17.0 including update 4 but do see it with 18.0 BETA even update 1. Now readers please note I reported this at the Online Service Center quite a while ago, almost soon after the BETA evaluation period started.
For those interested, here is an example case:
module m contains function foo() character(len=:), allocatable :: foo character(len=:), allocatable :: s end function foo end module
Upon compilation,
Compiling with Intel(R) Visual Fortran Compiler 18.0.0.083 [Intel(R) 64]... m.f90 .. m.f90(5): warning #5436: Overlapping storage initializations encountered with .T24__dv_template_V$1d
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I tried that with firefox and didn't get very far...
Chrome seems to work for me, but that site is a pretty mediocre interface for reporting software issues.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
ianh wrote:
.. that site is a pretty mediocre interface for reporting software issues.
".. pretty mediocre interface.." is being most polite.
Two points to note in case anyone from Intel reads this:
- How can the issue with the spurious warning mentioned in the original post of this thread even get past the alpha testing phase of compiler 18.0? I see tons of such warnings in almost every one of the programs I tested, so how come it wasn't noticed during the development phase itself?
- Online Server Center (OSC) is *infinitely* poorer than the previous Intel Premier Support (IPS) site, not that the latter was without problems. If nothing else, please look into bringing back the IPS system until the OSC can be completely revamped. By the way, how come no one at Intel noticed a basic issue that a customer, while reporting a new issue, is not prompted right away to provide any comments or description of the problem, the only option is to attach files. The customer then has to go back and edit the incident to enter in the supporting details. It's very unfortunate to see such a design for a web interface.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I fully agree with the comments in #4 and #5
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I too have reported this issue for the initial beta release (#02770369), but haven't had any updates since an acknowledgement that it has been escalated to development to fix. I therefore assume update 1 has the same issue, but can't verify because of another regression (#02873832).
I also agree with FortranFan's point 2 about OSC: it seems the process is create an issue is a bit back-to-front!
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Having worked around my regression, I still get this warning with 18.0.0.083 on allocatable deferred length scalars.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This issue was fixed. Did you try 18.0 Beta Update 1?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
FortranFan,
Both points are good. Thank you for the feedback.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
>type blat.f90 MODULE m CONTAINS SUBROUTINE s CHARACTER(:), ALLOCATABLE :: x, y END SUBROUTINE s END MODULE m >ifort /nologo /debug:full /Od /standard-semantics /stand:f03 /warn:all /traceback /check:all /libs:static /threads /dbglibs /c blat.f90 blat.f90(4): remark #7712: This variable has not been used.CHARACTER(:), ALLOCATABLE :: x, y ---------------------------------^ blat.f90(4): remark #7712: This variable has not been used. CHARACTER(:), ALLOCATABLE :: x, y ------------------------------------^ blat.f90(4): warning #5436: Overlapping storage initializations encountered with .T17__dv_template_V$1d CHARACTER(:), ALLOCATABLE :: x, y ---------------------------------^
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
IanH,
What happens when you "use" the variables?
The compiler in an attempt to remove dead code, would at some point remove the descriptors for the unused characters (with deferred length). At this point, X and Y are "null" strings, and thus may refer to the same address.
Jim Dempsey
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ian's source still gets the overlapping storage message with 18.0 Beta Update 1. This has to do with a temporary that the compiler creates and is definitely a compiler bug.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oops, that was supposed to have the version information in it (18.0.0.083) , but I ran with /nologo by accident. The warning goes away if you remove /stand:f03 - go figure.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Now that's interesting, considering that /stand is not supposed to affect generated code in any way. (But there have been bugs before where it did.)
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ian,
I will add your test case to the case. Thank you for the report.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
RE: To Steve:
If you request standards checking, we enable the compile-time initialization-overlapping checks because it's not standard to have overlapping initializations. Obviously the bug is that we - for some reason - thought that the temporary was sharing space with something else.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
This was indeed fixed but the fix will be available in the 18.0 Compiler release. The fix didn't make it to Beta.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page