From d976ea77e93901ba8aa09e47307472560df52f2a Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Tue, 1 Dec 2020 10:57:10 -0800 Subject: [PATCH] Fixed extension method issues where 'this' type is missing --- IDEHelper/Compiler/BfDefBuilder.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/IDEHelper/Compiler/BfDefBuilder.cpp b/IDEHelper/Compiler/BfDefBuilder.cpp index 4c4bb937..a496b56a 100644 --- a/IDEHelper/Compiler/BfDefBuilder.cpp +++ b/IDEHelper/Compiler/BfDefBuilder.cpp @@ -425,7 +425,7 @@ BfMethodDef* BfDefBuilder::CreateMethodDef(BfMethodDeclaration* methodDeclaratio methodDef->mIsExtern = methodDeclaration->mExternSpecifier != NULL; methodDef->mBody = methodDeclaration->mBody; - if (methodDeclaration->mThisToken != NULL) + if ((methodDeclaration->mThisToken != NULL) && (!methodDeclaration->mParams.IsEmpty())) methodDef->mMethodType = BfMethodType_Extension; HashContext signatureHashCtx; @@ -589,7 +589,7 @@ BfMethodDef* BfDefBuilder::CreateMethodDef(BfMethodDeclaration* methodDeclaratio methodDef->mName = methodDeclaration->mNameNode->ToString(); methodDef->mMethodType = BfMethodType_Normal; - if (methodDeclaration->mThisToken != NULL) + if ((methodDeclaration->mThisToken != NULL) && (!methodDeclaration->mParams.IsEmpty())) { methodDef->mMethodType = BfMethodType_Extension; mCurTypeDef->mHasExtensionMethods = true;