Details
-
Bug
-
Resolution: Done
-
P2: Important
-
5.5.0, 5.6.0
-
1ea17d70dcdbece5868a2d35417e0bfc66d68739
Description
Intel Issue ID: 6000127929.
Intel task number: DPD200375809.
When compiling QtQml with ICC on Windows, the compilation stops with the following error:
qv4context_p.h(141): error #373: "QV4::Managed::Managed()" (declared at line 114 of "qv4managed_p.h") is inaccessible struct Q_QML_EXPORT ExecutionContext : public Managed ^ detected during: implicit generation of "QV4::ExecutionContext::ExecutionContext()" at line 199 implicit generation of "QV4::CallContext::CallContext()" at line 199
The reason for this seems to be an incompatibility between how ICC and how MSVC treat __declspec(dllexport classes: since the classes derived from QV4::Managed do not have their constructors deleted, they are implicit and are thus instantiated so they can be exported. Of course, that instantiation fails: MSVC silently discards the failed instantiation but ICC complains.