From 3aa41cbcc0e9e5f87004f56f8b29b6d793c9cdf3 Mon Sep 17 00:00:00 2001 From: Nat Quayle Nelson Date: Wed, 31 May 2023 12:44:35 -0600 Subject: [PATCH] fix awaitLet regression --- src/kiss/Macros.hx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/kiss/Macros.hx b/src/kiss/Macros.hx index 0ff48da..74f0095 100644 --- a/src/kiss/Macros.hx +++ b/src/kiss/Macros.hx @@ -777,6 +777,7 @@ class Macros { var firstNameType = Helpers.explicitTypeString(firstName); var rejectionHandlerArgsAndBody = []; + var usingDefaultHandler = false; if (rejectionHandler == null) { switch (exps[1].def) { case CallExp({pos: _, def: Symbol("catch")}, catchArgs): @@ -784,6 +785,7 @@ class Macros { rejectionHandler = b.symbol(); rejectionHandlerArgsAndBody = catchArgs; default: + usingDefaultHandler = true; rejectionHandler = b.callSymbol("Prelude.makeAwaitLetDefaultCatch", [b.str(firstNameString)]); }; } @@ -791,7 +793,7 @@ class Macros { var innerExp = if (bindingList.length == 0) { b.begin(exps.slice(1)); } else { - var _rejectionHandler = if (rejectionHandlerArgsAndBody.length == 0) null else rejectionHandler; + var _rejectionHandler = if (usingDefaultHandler) null else rejectionHandler; awaitLet(_rejectionHandler, wholeExp, [b.list(bindingList)].concat(exps.slice(1)), k); }; switch(firstName.def) {