From 0fc118c13c574a05cf19a735056df126071696a1 Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Mon, 25 Dec 2023 10:01:00 -0500 Subject: [PATCH] Function reflection fix --- IDEHelper/Compiler/BfModuleTypeUtils.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/IDEHelper/Compiler/BfModuleTypeUtils.cpp b/IDEHelper/Compiler/BfModuleTypeUtils.cpp index b9ed6b5a..8fcf5421 100644 --- a/IDEHelper/Compiler/BfModuleTypeUtils.cpp +++ b/IDEHelper/Compiler/BfModuleTypeUtils.cpp @@ -4675,6 +4675,9 @@ 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; @@ -6537,9 +6540,6 @@ void BfModule::DoTypeInstanceMethodProcessing(BfTypeInstance* typeInstance) if (typeInstance->IncludeAllMethods()) implRequired = true; - if ((typeInstance->IsDelegateOrFunction()) && (methodDef->mName == "Invoke")) - implRequired = true; - // "AssumeInstantiated" also forces default ctor if (((typeInstance->mAlwaysIncludeFlags & BfAlwaysIncludeFlag_AssumeInstantiated) != 0) && (methodDef->IsDefaultCtor()))