From 166f997b0a71ae0cb1695c45e7bc123e0a7e4628 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Mon, 25 Dec 2023 11:23:20 -0500 Subject: [PATCH] Function explicit-this invoke reify fix --- IDEHelper/Compiler/BfModuleTypeUtils.cpp | 3 --- IDEHelper/Compiler/BfResolvedTypeUtils.cpp | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/IDEHelper/Compiler/BfModuleTypeUtils.cpp b/IDEHelper/Compiler/BfModuleTypeUtils.cpp index 8fcf5421..68ff329e 100644 --- a/IDEHelper/Compiler/BfModuleTypeUtils.cpp +++ b/IDEHelper/Compiler/BfModuleTypeUtils.cpp @@ -4675,9 +4675,6 @@ void BfModule::DoPopulateType(BfType* resolvedTypeRef, BfPopulateType populateTy typeInstance->mInstSize = std::max(0, typeInstance->mInstSize); typeInstance->mInstAlign = std::max(0, typeInstance->mInstAlign); - if (typeInstance->IsFunction()) - typeInstance->mAlwaysIncludeFlags = (BfAlwaysIncludeFlags)(typeInstance->mAlwaysIncludeFlags | BfAlwaysIncludeFlag_IncludeAllMethods); - ProcessCustomAttributeData(); int packing = 0; bool isUnion = false; diff --git a/IDEHelper/Compiler/BfResolvedTypeUtils.cpp b/IDEHelper/Compiler/BfResolvedTypeUtils.cpp index 5cd30867..b23b8604 100644 --- a/IDEHelper/Compiler/BfResolvedTypeUtils.cpp +++ b/IDEHelper/Compiler/BfResolvedTypeUtils.cpp @@ -1105,7 +1105,7 @@ BfType* BfMethodInstance::GetThisType() auto thisType = mParams[0].mResolvedType; auto owner = GetOwner(); if ((thisType->IsValueType()) && ((mMethodDef->mIsMutating) || (!AllowsSplatting(-1))) && (!thisType->GetLoweredType(BfTypeUsage_Parameter))) - return owner->mModule->CreatePointerType(thisType); + return owner->mModule->mContext->mUnreifiedModule->CreatePointerType(thisType); return thisType; } return GetParamType(-1);