Intel Inspector will fail to detect memory leaks when multiple Visual C++ runtime versions are loaded in the process

Intel Inspector will fail to detect memory leaks when multiple Visual C++ runtime versions are loaded in the process

While test-driving Intel Inspector we found out that it will fail to detect memory leaks when multiple Visual C++ runtime versions are loaded in the process.

Has anyone seen this before? Does anyone know if there's a way to point the tool to the specific runtime heap management one wants to inspect.

In our case the exe module is written by us, is compiled with Visual C++ 2008sp1 (MSVCR90.DLL) and brings in a plain C DLL that is built with v2010 (MSVCR100.dll).

Thanks in advance!

 

3 Beiträge / 0 neu
Letzter Beitrag
Nähere Informationen zur Compiler-Optimierung finden Sie in unserem Optimierungshinweis.

What happens if you go into "Project Properties" and in the "Advanced" properties, go to the "Modules" section, and:

  1. Select the "Include only the following module(s)" radio button
  2. Enter the names of the modules you are interested in.
  3. Run another analysis

Do you get the same results?

Another idea would be to go to the same section, and Exclude the modules you are not interested in.  Please give these a try, and let us know if you get better results.

I tried to build a simple test case by using dll (contains 1 leak)) & its caller in different Visual Studio version, but cannot reproduce this problem.

In VS2012 x64 Command Prompt,

cl /Zi /LD mydll.cpp /link ; generate mydll.dll

In VS2010 x64 Command Prompt,

cl /Zi mydll_test.cpp ; generate mydll_test.exe

Run "\Program Files (x86)\intel\Inspector XE 2013\inspxe-vars.bat" ; set Inspector XE's environment

inspxe-cl -collect mi3 -- mydll_test.exe; 1 Memory leak problem(s) detected.

I attached these files, you can try this on your side. Is it your project specific issue?

Anlagen: 

AnhangGröße
Herunterladen mydll.h98 Bytes
Herunterladen mydll.cpp536 Bytes
Herunterladen mydll_test.cpp413 Bytes

Kommentar hinterlassen

Bitte anmelden, um einen Kommentar hinzuzufügen. Sie sind noch nicht Mitglied? Jetzt teilnehmen