diff options
Diffstat (limited to 'bin')
-rw-r--r-- | bin/csh/Makefile | 2 | ||||
-rw-r--r-- | bin/sh/Makefile | 6 | ||||
-rw-r--r-- | bin/sh/parser.c | 4 |
3 files changed, 5 insertions, 7 deletions
diff --git a/bin/csh/Makefile b/bin/csh/Makefile index aa3b83b..6e3c32d 100644 --- a/bin/csh/Makefile +++ b/bin/csh/Makefile @@ -110,7 +110,7 @@ csh.1: tcsh.man build-tools: gethost -gethost: gethost.c sh.err.h tc.const.h sh.h +gethost: gethost.c sh.err.h tc.const.h sh.h ${BUILD_TOOLS_META} @rm -f ${.TARGET} ${CC} -o gethost ${LDFLAGS} ${CFLAGS:C/-DHAVE_ICONV//} \ ${TCSHDIR}/gethost.c diff --git a/bin/sh/Makefile b/bin/sh/Makefile index 419ff79..d3422b4 100644 --- a/bin/sh/Makefile +++ b/bin/sh/Makefile @@ -45,10 +45,10 @@ builtins.c builtins.h: mkbuiltins builtins.def # XXX this is just to stop the default .c rule being used, so that the # intermediate object has a fixed name. # XXX we have a default .c rule, but no default .o rule. -.o: +mknodes.o mksyntax.o: ${BUILD_TOOLS_META} ${CC} ${CFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} -mknodes: mknodes.o -mksyntax: mksyntax.o +mknodes: mknodes.o ${BUILD_TOOLS_META} +mksyntax: mksyntax.o ${BUILD_TOOLS_META} .ORDER: nodes.c nodes.h nodes.c nodes.h: mknodes nodetypes nodes.c.pat diff --git a/bin/sh/parser.c b/bin/sh/parser.c index 3f9732c..e72a6f1 100644 --- a/bin/sh/parser.c +++ b/bin/sh/parser.c @@ -1616,7 +1616,6 @@ parsesub: { int flags; char *p; static const char types[] = "}-+?="; - int bracketed_name = 0; /* used to handle ${[0-9]*} variables */ int linno; int length; int c1; @@ -1640,7 +1639,6 @@ parsesub: { subtype = VSNORMAL; flags = 0; if (c == '{') { - bracketed_name = 1; c = pgetc_linecont(); subtype = 0; } @@ -1665,7 +1663,7 @@ varname: flags |= VSLINENO; } } else if (is_digit(c)) { - if (bracketed_name) { + if (subtype != VSNORMAL) { do { STPUTC(c, out); c = pgetc_linecont(); |