std::deque: _EEN_DS not found

std::deque: _EEN_DS not found

I have been having really annoying issues debugging using Visual Studio 2010 with Intel Parallel Studio 2011 (Intel C++ as compiler). One such problem is that variables declared inside loops are not visible most of the time. VS2010 has a known issue with this, but it seems to happen more easily when using Intel C++ as compiler.The problem I would like to report is about Intel C++ removing, somehow, the anonymous enumerated value _EEN_DS defined in std::deque, which is needed to provide debugging information (it is used by the expression found in autoexp.dat). The end result is that every value of the deque displays "(error) | 0". If I compile the same file using Visual C++, then I am able to inspect the deque without problems.Just in case, the common type that I use for the deque is a sort of smart pointer.I even tried adding a line that assigns _EEN_DS to a variable (to use the symbol), but inspection of the container is still broken (probably due to an optimization, even when no optimizations are enabled).

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

Could you attach a testcase about the _EEN_DS issue? even some code snippets would be helpful.

Thanks,
Jennifer

Hi.

For this specific issue place a breakpoint at line 64. Both Cl0Seq and HCl0Seq will show "(error) | 0" for each element.

Thanks.

Pal.

Attachments: 

AttachmentSize
Downloadapplication/zip IntelIssueDbg.zip5.85 KB

Thanks Paul for the testcase.

I've submitted another bug report (DPD200164055) to the compiler team, will post a news here when there is a fix or work-around if possible.

Jennifer

Hi Paul,

the fix for your issue was included in the Intel Parallel Studio 2011 Update 3. I tried your testcase with the actual Update 4 and it worked for me. I've seen the content of the both variables at line 64.

Alexander

Download Intel Compiler Product Updates: Registration Center.
Try Intel Compiler Products: Intel Software Evaluation Center

Hi Alexander.I can confirm that the issue is solved for the provided test case with the latest version of Composer. However, I am now using Intel C++ Studio XE instead of Intel Parallel Studio 2011.I have just tried with a full application we build using Intel's Compiler, and it seems to be working properly as well. I tried a piece of code where the problem was present before, and now I can fully explore all variables, including containers, just fine.Nice work!Pal.

Hi Pal,

thanks for your reply. It's always good to have a confirmation from the customers.

Alexander

Leave a Comment

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