diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2018-09-13 11:54:20 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2018-09-13 11:54:20 +0200 |
commit | a33d76f8c95d33d6590dd185a2200f06cef014c7 (patch) | |
tree | b889acb7932bb86c99680bd3e196ce4dc7c91165 /sys/src/ape | |
parent | 5ea7337ae78541f70bc3d26931427b913de22cbc (diff) |
ape/make: fix \ line continuation parsing
Diffstat (limited to 'sys/src/ape')
-rw-r--r-- | sys/src/ape/cmd/make/gram.y | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/sys/src/ape/cmd/make/gram.y b/sys/src/ape/cmd/make/gram.y index 73bf48f08..243a8f557 100644 --- a/sys/src/ape/cmd/make/gram.y +++ b/sys/src/ape/cmd/make/gram.y @@ -321,17 +321,17 @@ else { break; case '\n': - ++yylineno; - if(p==yytext || p[-1]!='\\') - { - *p = '\0'; - goto endloop; - } - p[-1] = ' '; - while( (kc=getc(fin))=='\t' || kc==' ' || kc=='\n') - if(kc == '\n') - ++yylineno; - + do { + ++yylineno; + if(p==yytext || p[-1]!='\\') + { + *p = '\0'; + goto endloop; + } + p[-1] = ' '; + while( (kc=getc(fin))=='\t' || kc==' ') + ; + } while(kc == '\n'); if(kc != EOF) break; case EOF: |