From 67dadf34e588bbbf5a61e0759f52c3e3f3fad99b Mon Sep 17 00:00:00 2001 From: Brian Fiete Date: Thu, 2 Apr 2020 08:56:45 -0700 Subject: [PATCH] Fixed array lookup --- IDEHelper/Compiler/BfResolvedTypeUtils.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/IDEHelper/Compiler/BfResolvedTypeUtils.cpp b/IDEHelper/Compiler/BfResolvedTypeUtils.cpp index e32f267d..2e5ad2c3 100644 --- a/IDEHelper/Compiler/BfResolvedTypeUtils.cpp +++ b/IDEHelper/Compiler/BfResolvedTypeUtils.cpp @@ -3139,8 +3139,16 @@ bool BfResolvedTypeSet::Equals(BfType* lhs, BfTypeReference* rhs, LookupContext* auto rhsArrayTypeRef = BfNodeDynCastExact(rhs); if (rhsArrayTypeRef == NULL) return false; - if (!rhsArrayTypeRef->mParams.IsEmpty()) - return false; + // Any non-comma param means it's a sized array + for (auto param : rhsArrayTypeRef->mParams) + { + bool isComma = false; + if (auto tokenNode = BfNodeDynCast(param)) + isComma = tokenNode->mToken == BfToken_Comma; + if (!isComma) + return false; + } + BfArrayType* lhsArrayType = (BfArrayType*) lhs; if (lhsArrayType->mDimensions != rhsArrayTypeRef->mDimensions) return false;