From 0cbd2d1d03ff96eb668fc6a14311d96ed0f9f8b5 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Mon, 19 Dec 2022 11:13:11 +0200 Subject: Restore newline escaping (line continuations) in double-quoted strings Also make effective escaping in buildspec and command line variable overrides consistent with double-quoted strings. --- libbuild2/lexer.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'libbuild2/lexer.cxx') diff --git a/libbuild2/lexer.cxx b/libbuild2/lexer.cxx index d82c135..04c15be 100644 --- a/libbuild2/lexer.cxx +++ b/libbuild2/lexer.cxx @@ -923,10 +923,10 @@ namespace build2 auto quoted_mode = [this] (lexer_mode m) { // In the double-quoted mode we only do effective escaping of the - // special `$("\` characters plus `)` for symmetry. Nothing can be - // escaped in single-quoted. + // special `$("\` characters, line continuations, plus `)` for + // symmetry. Nothing can be escaped in single-quoted. // - const char* esc (m == lexer_mode::double_quoted ? "$()\"\\" : ""); + const char* esc (m == lexer_mode::double_quoted ? "$()\"\\\n" : ""); state_.push (state { m, 0, nullopt, false, false, '\0', false, true, true, -- cgit v1.1