1
0
Fork 0
mirror of https://github.com/beefytech/Beef.git synced 2025-06-10 04:22:20 +02:00

Removed mDtorDef, fixed MethodSpecializationRequest on emitted method

This commit is contained in:
Brian Fiete 2021-01-11 10:52:44 -08:00
parent 71d4dd0e90
commit bc8758bbac
7 changed files with 71 additions and 51 deletions

View file

@ -44,7 +44,7 @@ public:
class BfMethodSpecializationRequest : public BfWorkListEntry
{
public:
BfMethodDef* mMethodDef;
int32 mMethodIdx;
BfTypeVector mMethodGenericArguments;
BfGetMethodInstanceFlags mFlags;
BfTypeInstance* mForeignType;
@ -52,10 +52,21 @@ public:
public:
BfMethodSpecializationRequest()
{
mMethodDef = NULL;
mMethodIdx = -1;
mFlags = BfGetMethodInstanceFlag_None;
mForeignType = NULL;
}
void Init(BfTypeInstance* typeInstance, BfTypeInstance* foreignType, BfMethodDef* methodDef)
{
mType = typeInstance;
mMethodIdx = methodDef->mIdx;
mForeignType = foreignType;
if (foreignType != NULL)
BF_ASSERT(foreignType->mTypeDef->mMethods[mMethodIdx] == methodDef);
else
BF_ASSERT(typeInstance->mTypeDef->mMethods[mMethodIdx] == methodDef);
}
};
class BfMethodProcessRequest : public BfWorkListEntry