yacc: Fix a bug from at least 1995.
Fix a bug folding newlines in strings constants in C code snippets
in YACC. This code has existed since at least 2nd Edition Plan 9.
Change-Id: Iba17b89a6529ac9fa6610bf0b44f551904174c26
Signed-off-by: Dan Cross <cross@gajendra.net>
Reviewed-on: https://plan9port-review.googlesource.com/2840
Reviewed-by: Russ Cox <rsc@swtch.com>
diff --git a/src/cmd/yacc.c b/src/cmd/yacc.c
index c080e01..32990f6 100644
--- a/src/cmd/yacc.c
+++ b/src/cmd/yacc.c
@@ -2130,11 +2130,12 @@
c = Bgetrune(finput);
if(c == '\n')
lineno++;
- } else
+ } else {
if(c == match)
goto lcopy;
if(c == '\n')
error("newline in string or char. const.");
+ }
Bputrune(faction, c);
}
error("EOF in string or character constant");