From 3dadbc3506679b1d974f4bd432bdfc7dc441d23f Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Wed, 1 Jun 2022 15:21:32 -0700 Subject: [PATCH] Removed redundant interface errors after type fail --- IDEHelper/Compiler/BfModule.cpp | 2 +- IDEHelper/Compiler/BfModuleTypeUtils.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/IDEHelper/Compiler/BfModule.cpp b/IDEHelper/Compiler/BfModule.cpp index c7ecb2d7..1bfc5099 100644 --- a/IDEHelper/Compiler/BfModule.cpp +++ b/IDEHelper/Compiler/BfModule.cpp @@ -23221,7 +23221,7 @@ void BfModule::DoMethodDeclaration(BfMethodDeclaration* methodDeclaration, bool bool interfaceFound = false; for (auto ifaceInst : typeInstance->mInterfaces) interfaceFound |= ifaceInst.mInterfaceType == mCurMethodInstance->mMethodInfoEx->mExplicitInterface; - if (!interfaceFound) + if ((!interfaceFound) && (!typeInstance->mTypeFailed)) { if (methodDef->mMethodDeclaration != NULL) Fail("Containing class has not declared to implement this interface", methodDef->mMethodDeclaration); diff --git a/IDEHelper/Compiler/BfModuleTypeUtils.cpp b/IDEHelper/Compiler/BfModuleTypeUtils.cpp index a2c10aca..6c21ca16 100644 --- a/IDEHelper/Compiler/BfModuleTypeUtils.cpp +++ b/IDEHelper/Compiler/BfModuleTypeUtils.cpp @@ -4957,7 +4957,7 @@ void BfModule::DoPopulateType(BfType* resolvedTypeRef, BfPopulateType populateTy bool interfaceFound = false; for (auto ifaceInst : typeInstance->mInterfaces) interfaceFound |= ifaceInst.mInterfaceType == explicitInterface; - if (!interfaceFound) + if ((!interfaceFound) && (!typeInstance->mTypeFailed)) { Fail("Containing class has not declared to implement this interface", propDecl->mExplicitInterface, true); }