-
Bug
-
Resolution: Unresolved
-
P4: Low
-
None
-
5.7.0
-
None
-
QT 5.7, CPPTOOLS 4.0.3, Windows 7 x86
I attached 7z archive:
1. dumpcppBug - qt 5.7 sample project
2. testCOM - test VS2012 project with release testCOM.dll
Code snippet:
//COM interface: // //interface ITest2 : IDispatch{ // [id(1), helpstring("method foo")] HRESULT foo ( [out,retval] INT* ret ); //}; // //interface ITest : IDispatch{ // ... // [id(8), helpstring("method foo2")] HRESULT foo2 ( [out] ITest2** iTest2, [out,retval] INT* ret ); //}; //Namespace testCOMLib generated by dumpcpp v5.7.0 using testCOMLib::Test test; testCOMLib::ITest2 *pitest2 = nullptr; // inline int Test::foo2(ITest2** ITest2) auto res = test.foo2(&pitest2); // <--
QT Debugger log:
Debugging starts QAxBase: Error calling IDispatch member foo2: Type mismatch in parameter 0 Debugging has finished
DISP_E_TYPEMISMATCH emitted from checkHRESULT() qtactiveqt\src\activeqt\container\qaxbase.cpp:3446 .