I have a project compiled using the __cdecl calling __cdecl (msvc2010), and I compiled boost using the same compiler using the default settings.
A project related to boost, but I, at runtime, received a message with an approval like this: File: ... \ boost \ boost \ program_options \ detail \ parsers.hpp Line: 79
Runtime Check Error # 0 - ESP value was not properly stored during function call. This is usually the result of calling a function declared with one call, with a function pointer declared with another calling convention.
The following questions arise:
- that the calling convention increases the default build in Windows (msvc2010)
- how to compile boost using __cdecl calling convention
- Why wasn't boost able to prevent code linking with various calling conventions? I realized that boost has really smart code to automatically enable the library.
Update # 1
It looks like boost is compiling and linking to the corresponding calling convention, but at runtime I get the above problem. I made an example application using the same code and it works, but it fails in my application. The only difference may be from the project configuration or includes / stdafx.h
sorin source share