From 81daadfce8d5a6aec93c248e4428794a727e1069 Mon Sep 17 00:00:00 2001 From: Herbert Xu Date: Sun, 11 Nov 2007 14:21:23 +0800 Subject: [PARSER] Removed noexpand/length check on eofmark On Tue, Oct 30, 2007 at 04:23:35AM +0000, Oleg Verych wrote: > > } 8<<"" > ====================== Actually this (the empty delim) only works with dash by accident. I've tried bash and pdksh and they both terminate on the first empty line which is what you would expect rather than EOF. The real Korn shell does something completely different. I've fixed this in dash to conform to bash/pdksh. > In [0] it's stated, that delimiter isn't evaluated (expanded), only > quoiting must be checked. That if() seems to be completely bogus. OK I agree. The reason it was there is because the parser would have already replaced the dollar sign by an internal representation. I've fixed it properly with this patch. Test case: cat <<- $a OK $a cat <<- "" OK echo OK Old result: dash: Syntax error: Illegal eof marker for << redirection OK echo OK New result: OK OK OK --- src/input.h | 1 - 1 file changed, 1 deletion(-) (limited to 'src/input.h') diff --git a/src/input.h b/src/input.h index 1ed9ddf..1d6f528 100644 --- a/src/input.h +++ b/src/input.h @@ -50,7 +50,6 @@ extern int plinno; extern int parsenleft; /* number of characters left in input buffer */ extern char *parsenextc; /* next character in input buffer */ -char *pfgets(char *, int); int pgetc(void); int pgetc2(void); int preadbuffer(void); -- cgit 1.4.1