From 8ce5bc05bcf9b263a65eb6e8d6bae0e610a88b16 Mon Sep 17 00:00:00 2001 From: tjg Date: Mon, 1 Oct 2001 12:54:26 +0000 Subject: Bug: it's no longer possible to use parentheses to sneak a word that needs quoting past the "quoting detector", so `fn x { echo $(x.y) }' now works both in the current rc and its descendants. --- rc.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'rc.h') diff --git a/rc.h b/rc.h index 3c1aef9..9cc6e48 100644 --- a/rc.h +++ b/rc.h @@ -29,8 +29,8 @@ typedef struct Format Format; typedef union Edata Edata; typedef enum nodetype { - nAndalso, nAssign, nBackq, nBang, nBody, nCbody, nNowait, nBrace, nConcat, - nCount, nElse, nFlat, nDup, nEpilog, nNewfn, nForin, nIf, nQword, + nAndalso, nAssign, nBackq, nBang, nBody, nCbody, nNowait, nBrace, + nConcat, nCount, nElse, nFlat, nDup, nEpilog, nNewfn, nForin, nIf, nOrelse, nPipe, nPre, nRedir, nRmfn, nArgs, nSubshell, nCase, nSwitch, nMatch, nVar, nVarsub, nWhile, nWord, nLappend, nNmpipe } nodetype; @@ -97,6 +97,7 @@ struct Redir { struct Word { char *w, *m; + bool q; }; struct Rq { @@ -279,6 +280,7 @@ extern bool rcrc; /* lex.c */ +extern bool quotep(char *); extern int yylex(void); extern void inityy(void); extern void yyerror(const char *); -- cgit v1.2.3