From 63acbad0582e7098ddaa2e903cdafbfd7e315004 Mon Sep 17 00:00:00 2001 From: Cole Faust Date: Thu, 13 Jun 2024 15:12:04 -0700 Subject: [PATCH] Fix extra newline after multiline select case bodies Bug: 346922064 Test: go test Change-Id: I0587ab04d463a1923440564647d0f1e1bf6d216b --- parser/printer.go | 2 +- parser/printer_test.go | 37 +++++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+), 1 deletion(-) diff --git a/parser/printer.go b/parser/printer.go index 848b95a..c3ecf96 100644 --- a/parser/printer.go +++ b/parser/printer.go @@ -227,7 +227,7 @@ func (p *printer) printSelect(s *Select) { } else { p.printExpression(c.Value) } - p.printToken(",", c.Value.Pos()) + p.printToken(",", c.Value.End()) } p.requestNewline() p.unindent(s.RBracePos) diff --git a/parser/printer_test.go b/parser/printer_test.go index 3a81551..60568eb 100644 --- a/parser/printer_test.go +++ b/parser/printer_test.go @@ -696,6 +696,43 @@ foo { (default, default): "b", }), } +`, + }, + { + name: "Select with multiline inner expression", + input: ` +foo { + cflags: [ + "-DPRODUCT_COMPATIBLE_PROPERTY", + "-DRIL_SHLIB", + "-Wall", + "-Wextra", + "-Werror", + ] + select(soong_config_variable("sim", "sim_count"), { + "2": [ + "-DANDROID_MULTI_SIM", + "-DANDROID_SIM_COUNT_2", + ], + default: [], + }), +} +`, + output: ` +foo { + cflags: [ + "-DPRODUCT_COMPATIBLE_PROPERTY", + "-DRIL_SHLIB", + "-Wall", + "-Werror", + "-Wextra", + ] + select(soong_config_variable("sim", "sim_count"), { + "2": [ + "-DANDROID_MULTI_SIM", + "-DANDROID_SIM_COUNT_2", + ], + default: [], + }), +} `, }, }