[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 2/2] pkl: parser: make parens optional for format
From: |
Mohammad-Reza Nabipoor |
Subject: |
[PATCH v2 2/2] pkl: parser: make parens optional for format |
Date: |
Fri, 21 Apr 2023 03:34:03 +0200 |
This commit improves user experience of poke for jemarch.
2023-04-21 Mohammad-Reza Nabipoor <mnabipoor@gnu.org>
* libpoke/pkl-tab.y (primary): Add new rule for `format' with no
parens.
* testsuite/poke.pkl/format-74.pk: New test.
* testsuite/Makefile.am (EXTRA_DIST): Update.
---
ChangeLog | 7 +++++++
libpoke/pkl-tab.y | 7 +++++++
testsuite/Makefile.am | 1 +
testsuite/poke.pkl/format-74.pk | 7 +++++++
4 files changed, 22 insertions(+)
create mode 100644 testsuite/poke.pkl/format-74.pk
diff --git a/ChangeLog b/ChangeLog
index e0ceefba..61128120 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2023-04-21 Mohammad-Reza Nabipoor <mnabipoor@gnu.org>
+
+ * libpoke/pkl-tab.y (primary): Add new rule for `format' with no
+ parens.
+ * testsuite/poke.pkl/format-74.pk: New test.
+ * testsuite/Makefile.am (EXTRA_DIST): Update.
+
2023-04-21 Mohammad-Reza Nabipoor <mnabipoor@gnu.org>
* libpoke/pkl-tab.y (primary): Remove typification of `format'.
diff --git a/libpoke/pkl-tab.y b/libpoke/pkl-tab.y
index 82d3168d..47023cc2 100644
--- a/libpoke/pkl-tab.y
+++ b/libpoke/pkl-tab.y
@@ -1222,6 +1222,13 @@ primary:
PKL_AST_LOC ($$) = @$;
}
+ | FORMAT STR format_arg_list
+ {
+ $$ = pkl_ast_make_format (pkl_parser->ast, $2, $3,
+ 0 /* printf_p */);
+ PKL_AST_LOC ($2) = @2;
+ PKL_AST_LOC ($$) = @$;
+ }
| expression INC
{
$$ = pkl_ast_make_incrdecr (pkl_parser->ast, $1,
diff --git a/testsuite/Makefile.am b/testsuite/Makefile.am
index de4bb752..a9c9a560 100644
--- a/testsuite/Makefile.am
+++ b/testsuite/Makefile.am
@@ -1460,6 +1460,7 @@ EXTRA_DIST = \
poke.pkl/format-71.pk \
poke.pkl/format-72.pk \
poke.pkl/format-73.pk \
+ poke.pkl/format-74.pk \
poke.pkl/format-diag-1.pk \
poke.pkl/format-diag-2.pk \
poke.pkl/format-diag-3.pk \
diff --git a/testsuite/poke.pkl/format-74.pk b/testsuite/poke.pkl/format-74.pk
new file mode 100644
index 00000000..8877e436
--- /dev/null
+++ b/testsuite/poke.pkl/format-74.pk
@@ -0,0 +1,7 @@
+/* { dg-do run } */
+
+/* { dg-command {.set obase 16} } */
+/* { dg-command {format ""} } */
+/* { dg-command {"\n"} } */
+/* { dg-command {format "%i13x%s %u32x", -1, "Hello", 0xdeadbeef} } */
+/* { dg-command {"1fffHello deadbeef"} } */
--
2.40.0