From 05dbed21ff0133d6183f77107e9ab06bcbdf4f30 Mon Sep 17 00:00:00 2001 From: xiyang Date: Thu, 14 Dec 2023 22:37:57 +0800 Subject: [PATCH] Fix issue 2572 --- src/parser/transform/transform_expression.cpp | 2 +- test/test_files/tinysnb/function/struct.test | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/src/parser/transform/transform_expression.cpp b/src/parser/transform/transform_expression.cpp index 4e9ed13b00..7a47ec4b08 100644 --- a/src/parser/transform/transform_expression.cpp +++ b/src/parser/transform/transform_expression.cpp @@ -455,7 +455,7 @@ std::unique_ptr Transformer::transformStructLiteral( for (auto& structField : ctx.kU_StructField()) { auto structExpr = transformExpression(*structField->oC_Expression()); std::string alias; - if (structField->oC_Expression()) { + if (structField->oC_SymbolicName()) { alias = transformSymbolicName(*structField->oC_SymbolicName()); } else { alias = transformStringLiteral(*structField->StringLiteral()); diff --git a/test/test_files/tinysnb/function/struct.test b/test/test_files/tinysnb/function/struct.test index 490bef6876..1ce2053c4b 100644 --- a/test/test_files/tinysnb/function/struct.test +++ b/test/test_files/tinysnb/function/struct.test @@ -15,6 +15,10 @@ ---- 1 {a: 1, b: {c: C, d: D}} +-STATEMENT RETURN {"foo": "bar"}; +---- 1 +{foo: bar} + -LOG StructExtract -STATEMENT WITH {a:1, b:{c: 'C', d: 'D'}} AS s RETURN s.b.c ---- 1