Subject: bug#74993: closed ([PATCH] guix: toml: Fix evaluation of empty inline tables.)

From: [email-masked] (GNU bug Tracking System)
Date: Sun, 05 Jan 2025 12:54:02 +0000

Your bug report

#74993: [PATCH] guix: toml: Fix evaluation of empty inline tables.

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
74993: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=74993
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: [PATCH] guix: toml: Fix evaluation of empty inline tables.
From: Ricardo Wurmus <[email-masked]>
To: [email-masked]
Cc: Lars-Dominik Braun <[email-masked]>
Date: Sun, 05 Jan 2025 13:53:27 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

I've just pushed it to the python-team branch.

-- 
Ricardo

Subject: [PATCH] guix: toml: Fix evaluation of empty inline tables.
From: Lars-Dominik Braun <[email-masked]>
To: [email-masked]
Date: Fri, 20 Dec 2024 12:29:32 +0100
List-Id: <debbugs-submit.debbugs.gnu.org>

* guix/build/toml.scm (eval-toml-file): Add pattern for empty inline table.
* tests/toml.scm ("parse-toml: Empty inline table"): New testcase.

Change-Id: I69663af2a861716acfb801fad4474e029e102a1b
---
 guix/build/toml.scm | 1 +
 tests/toml.scm      | 8 ++++++++
 2 files changed, 9 insertions(+)

diff --git a/guix/build/toml.scm b/guix/build/toml.scm
index 81b54fa5b7..a9be0887e7 100644
--- a/guix/build/toml.scm
+++ b/guix/build/toml.scm
@@ -414,6 +414,7 @@ (define (eval-toml-file parse-tree)
                                           local-time)
                                         tails)))
       ('array (list))
+      ('inline-table '())
       (('inline-table tails ...)
        (eval (keyword-flatten '(keyval) tails) '() '()))))
 
diff --git a/tests/toml.scm b/tests/toml.scm
index cd8e4d2338..64bc667f0c 100644
--- a/tests/toml.scm
+++ b/tests/toml.scm
@@ -396,6 +396,14 @@ (define-module (test-toml)
 point = { x = 1, y = 2 }
 animal = { type.name = \"pug\" }"))
 
+(test-equal "parse-toml: Empty inline table"
+ '(("name")
+   ("point")
+   ("animal"))
+ (parse-toml "name = {}
+point = { }
+animal = {    }"))
+
 (test-error "parse-toml: Invalid assignment to inline table"
  #t
  (parse-toml "[product]

base-commit: 946e48d1d87ec451e7a6315712f2e86c79961a51
-- 
2.45.2