From 78a34bb53fcede1e8316fd041de8822ae76af879 Mon Sep 17 00:00:00 2001 From: ertugrulfarukpiskin Date: Fri, 27 Jun 2025 16:20:11 +0300 Subject: [PATCH] es2panda crash on tuple mismatch Issue: https://gitee.com/openharmony/arkcompiler_ets_frontend/issues/ICIEF7 Description: If preferred type is tuple and mismatches with given array expression es2panda crashes Signed-off-by: ertugrulfarukpiskin --- ets2panda/checker/ETSAnalyzer.cpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/ets2panda/checker/ETSAnalyzer.cpp b/ets2panda/checker/ETSAnalyzer.cpp index aa6eb3ff15..fefc012619 100644 --- a/ets2panda/checker/ETSAnalyzer.cpp +++ b/ets2panda/checker/ETSAnalyzer.cpp @@ -750,6 +750,7 @@ static bool CheckElement(ETSChecker *checker, Type *const preferredType, auto [elementType, currentElement] = arrayExprElementTypes[idx]; if (elementType->IsTypeError()) { + checker->LogError(diagnostic::BINOP_UNEXPECTED_ERROR, currentElement->Start()); return true; } @@ -758,6 +759,7 @@ static bool CheckElement(ETSChecker *checker, Type *const preferredType, if (preferredType->IsETSTupleType()) { const auto *const tupleType = preferredType->AsETSTupleType(); if (tupleType->GetTupleSize() != arrayExprElementTypes.size()) { + checker->LogError(diagnostic::TUPLE_SIZE_MISMATCH, {tupleType->GetTupleSize()}, currentElement->Start()); return false; } -- Gitee