Warnings when building ATL project with BoundsChecker

0 Likes

Problem:

When building a project that uses ATL with BoundsChecker, I get lots of warnings like these: warning NM4950: Not instrumenting __declspec(naked) function: ?f261@_QIThunk@ATL@@UAGJXZ [:virtual long __stdcall ATL::_QIThunk::f261(void):]

Do you have any idea what's going on and if so what I can do about it?

Resolution:

The storage-class attribute naked is not supported by BoundsChecker instrumentation, therefore, we issue the warning in versions of BoundsChecker prior to 6.2.

Turning on the ATL diagnostic define _ATL_DEBUG_INTERFACES causes the ATL stuff to generate a bunch of thunks with funny names and __declspec(naked) attributes; this causes nmcl to generate a warning about not being able to instrument each and every one of them.

When customers reported this as being very annoying, a change was made in BoundsChecker 6.2 to suppress the warnings for the thunks that the ATL generates.

Old KB# 12321
Comment List
Anonymous
Related Discussions
Recommended