From 4717c66dbf1f189bd752259a9e7b2dfe87ef9617 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marek=20S=2E=20=C5=81ukasiewicz?= Date: Mon, 28 Apr 2025 17:39:30 +0200 Subject: [PATCH] Update grammar to not require a plus sign in exponent This allows to parse numbers like 0.31416E1 and 34e1 (both examples from Lua Reference Manual) --- src/lua.grammar | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/lua.grammar b/src/lua.grammar index d3ca805..0063d6c 100644 --- a/src/lua.grammar +++ b/src/lua.grammar @@ -146,8 +146,8 @@ TableConstructor { "{" (field (fieldsep field) fieldsep?)? "}" } digit { std.digit } Number { - digit+ ("." digit+)? ($[eE] $[+\-] digit+)? | - "0" $[xX] hex+ ("." hex+)? ($[pP] $[+/-] digit+)? + digit+ ("." digit+)? ($[eE] $[+\-]? digit+)? | + "0" $[xX] hex+ ("." hex+)? ($[pP] $[+\-]? digit+)? } Comment { "--" ![\n\r]* }