1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-08 19:48:20 +02:00

fix explicit thiscall crash

This commit is contained in:
EinBurgbauer 2021-05-18 19:42:28 +02:00
parent d7f0c6523d
commit 4fb7a0f53f

View file

@ -1208,7 +1208,8 @@ void BfMethodInstance::GetIRFunctionInfo(BfModule* module, BfIRType& returnType,
{
returnType = module->mBfIRBuilder->MapType(mReturnType);
}
bool hasExplicitThis = false;
for (int paramIdx = -1; paramIdx < GetParamCount(); paramIdx++)
{
BfType* checkType = NULL;
@ -1223,13 +1224,23 @@ void BfMethodInstance::GetIRFunctionInfo(BfModule* module, BfIRType& returnType,
else
{
if (HasExplicitThis())
{
checkType = GetParamType(0);
hasExplicitThis = true;
}
else
checkType = GetOwner();
}
}
else
{
if (hasExplicitThis)
{
// We already looked at this
hasExplicitThis = false;
continue;
}
checkType = GetParamType(paramIdx);
}