From 223f92d4f67bc4a168409b20e019b0ec6ad4b904 Mon Sep 17 00:00:00 2001 From: Aarne Ranta Date: Tue, 4 Oct 2022 11:06:56 +0200 Subject: [PATCH] using an unparsable variable name in the internal desugaring of table extension to avoid captures; captures with iterated table extensions might still be possible, which needs further analysis --- src/compiler/GF/Grammar/Parser.y | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/compiler/GF/Grammar/Parser.y b/src/compiler/GF/Grammar/Parser.y index 7837ec015..85b081cd7 100644 --- a/src/compiler/GF/Grammar/Parser.y +++ b/src/compiler/GF/Grammar/Parser.y @@ -430,7 +430,7 @@ Exp3 RecType xs -> RecType (xs ++ [(tupleLabel (length xs+1),$3)]) t -> RecType [(tupleLabel 1,$1), (tupleLabel 2,$3)] } | Exp3 '**' Exp4 { ExtR $1 $3 } - | Exp3 '**' '{' ListCase '}' { let v = identS "vvv" in T TRaw ($4 ++ [(PV v, S $1 (Vr v))]) } + | Exp3 '**' '{' ListCase '}' { let v = identS "$vvv" in T TRaw ($4 ++ [(PV v, S $1 (Vr v))]) } | Exp4 { $1 } Exp4 :: { Term }