From d01a26ec616cb4b75910a849da4d794b68a52349 Mon Sep 17 00:00:00 2001 From: Irmen de Jong Date: Sun, 16 Apr 2023 05:23:06 +0200 Subject: [PATCH] fix occasional crash when indexing an undefined array variable --- compiler/src/prog8/compiler/astprocessing/CodeDesugarer.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/compiler/src/prog8/compiler/astprocessing/CodeDesugarer.kt b/compiler/src/prog8/compiler/astprocessing/CodeDesugarer.kt index 7fa098bc1..c3ca1d53a 100644 --- a/compiler/src/prog8/compiler/astprocessing/CodeDesugarer.kt +++ b/compiler/src/prog8/compiler/astprocessing/CodeDesugarer.kt @@ -142,8 +142,8 @@ _after: val indexExpr = arrayIndexedExpression.indexer.indexExpr val indexerDt = indexExpr.inferType(program) if(indexerDt.isWords) { - val arrayVar = arrayIndexedExpression.arrayvar.targetVarDecl(program)!! - if(arrayVar.datatype==DataType.UWORD) { + val arrayVar = arrayIndexedExpression.arrayvar.targetVarDecl(program) + if(arrayVar!=null && arrayVar.datatype==DataType.UWORD) { val add: Expression = if(indexExpr.constValue(program)?.number==0.0) arrayIndexedExpression.arrayvar.copy()