From 7cdbfc26a969b157be40bdb3d0aecf3341e3cf18 Mon Sep 17 00:00:00 2001 From: Malte Ubl Date: Sun, 11 Oct 2026 12:49:26 -0700 Subject: [PATCH] Format local-array-reads and record the preflight baseline for corpus 4671 --- .../compiler/src/backend/llvm/local-array-reads.ts | 13 +++++++++++-- .../compiler/test/ts7/baselines/order-parity.json | 6 ++++++ 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/packages/compiler/src/backend/llvm/local-array-reads.ts b/packages/compiler/src/backend/llvm/local-array-reads.ts index f4059b104..abe88c9d1 100644 --- a/packages/compiler/src/backend/llvm/local-array-reads.ts +++ b/packages/compiler/src/backend/llvm/local-array-reads.ts @@ -115,10 +115,19 @@ function inlineArrayRead( nullable?.(value.type.unionId) !== true ) return null; - return { type: value.type, element, presentTag, missingTag, array, index, nullableElement: true }; + return { + type: value.type, + element, + presentTag, + missingTag, + array, + index, + nullableElement: true, + }; } const element = array.type.elem; - if ((!isRefCounted(element) && !isScalarElement(element)) || element.kind === "union") return null; + if ((!isRefCounted(element) && !isScalarElement(element)) || element.kind === "union") + return null; const presentTag = arms.findIndex((arm) => typeEquals(arm, element)); if (presentTag < 0 || then.kind !== "unionWrap" || then.tag !== presentTag) return null; return { type: value.type, element, presentTag, missingTag, array, index }; diff --git a/packages/compiler/test/ts7/baselines/order-parity.json b/packages/compiler/test/ts7/baselines/order-parity.json index 537f6dea7..987062767 100644 --- a/packages/compiler/test/ts7/baselines/order-parity.json +++ b/packages/compiler/test/ts7/baselines/order-parity.json @@ -15859,6 +15859,12 @@ "/tests/corpus/constant-module-globals/main.ts" ], "diags": [] + }, + "/tests/corpus/4671-scoped-array-read-borrows.ts": { + "order": [ + "/tests/corpus/4671-scoped-array-read-borrows.ts" + ], + "diags": [] } } }