Skip to content

MSVC compiler complains about different calling convention between interface and impl when building Win32 binaries #7845

@hzqst

Description

@hzqst
\thirdparty\slang-fork\source\compiler-core\slang-artifact-associated.h(143,52): error C2695: “Slang::IArtifac
tPostEmitMetadata::getDebugBuildIdentifier”: overriding virtual function differs from “slang::IMetadata::getDebugBuildIdentifier”
\thirdparty\slang-fork\source\compiler-core\slang-artifact-impl.h(100,52): error C2695: “Slang::Artifact::getM
etadata”: overriding virtual function differs from “slang::IMetadata::getDebugBuildIdentifier”
\thirdparty\slang-fork\source\compiler-core\slang-artifact-impl.h(99,5): error C2695: “Slang::Artifact::getIte
mData”: overriding virtual function differs from......

The impl: SLANG_MCALL (stdcall)
The interface: default (thiscall)

This is what I did to fix the compilation error on my end:
Image

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions