diff --git a/check.t b/check.t index 4cd3ed7..7eaccfc 100644 --- a/check.t +++ b/check.t @@ -1,4 +1,4 @@ -# $MirOS: src/bin/mksh/check.t,v 1.509 2012/01/03 01:40:15 tg Exp $ +# $MirOS: src/bin/mksh/check.t,v 1.510 2012/01/03 15:32:05 tg Exp $ # $OpenBSD: bksl-nl.t,v 1.2 2001/01/28 23:04:56 niklas Exp $ # $OpenBSD: history.t,v 1.5 2001/01/28 23:04:56 niklas Exp $ # $OpenBSD: read.t,v 1.3 2003/03/10 03:48:16 david Exp $ @@ -8284,7 +8284,7 @@ stdin: #TSELECT select file in *; do echo "<$file>" ; break ; done #TFOR_TTIME - for i in {1,2,3} ; do time echo $i ; done + time for i in {1,2,3} ; do echo $i ; done #TCASE case $foo in 1) echo eins;& 2) echo zwei ;| *) echo kann net bis drei zählen;; esac #TIF_TBANG_TDBRACKET_TELIF @@ -8426,25 +8426,25 @@ expected-stdout: x=$(( select file in * ; do echo "<$file>" ; break ; done ) | tr u x ) } inline_TFOR_TTIME() { - for i in {1,2,3} ; do time echo $i ; done + time for i in {1,2,3} ; do echo $i ; done } inline_TFOR_TTIME() { - for i in {1,2,3} + time for i in {1,2,3} do - time echo $i + echo $i done } function comsub_TFOR_TTIME { x=$( - for i in {1,2,3} ; do time echo $i ; done + time for i in {1,2,3} ; do echo $i ; done ); } function comsub_TFOR_TTIME { - x=$(for i in {1,2,3} ; do time echo $i ; done ) + x=$(time for i in {1,2,3} ; do echo $i ; done ) } function reread_TFOR_TTIME { x=$(( - for i in {1,2,3} ; do time echo $i ; done + time for i in {1,2,3} ; do echo $i ; done )|tr u x); } function reread_TFOR_TTIME { - x=$(( for i in {1,2,3} ; do time echo $i ; done ) | tr u x ) + x=$(( time for i in {1,2,3} ; do echo $i ; done ) | tr u x ) } inline_TCASE() { case $foo in 1) echo eins;& 2) echo zwei ;| *) echo kann net bis drei zählen;; esac diff --git a/syn.c b/syn.c index 3cad1c4..594d193 100644 --- a/syn.c +++ b/syn.c @@ -1,7 +1,8 @@ /* $OpenBSD: syn.c,v 1.28 2008/07/23 16:34:38 jaredy Exp $ */ /*- - * Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2011 + * Copyright (c) 2003, 2004, 2005, 2006, 2007, 2008, 2009, + * 2011, 2012 * Thorsten Glaser * * Provided that these terms and disclaimer and all copyright notices @@ -22,7 +23,7 @@ #include "sh.h" -__RCSID("$MirOS: src/bin/mksh/syn.c,v 1.72 2011/12/29 22:03:15 tg Exp $"); +__RCSID("$MirOS: src/bin/mksh/syn.c,v 1.73 2012/01/03 15:32:08 tg Exp $"); extern short subshell_nesting_level; extern void yyskiputf8bom(void); @@ -458,7 +459,7 @@ get_command(int cf) case TIME: syniocf &= ~(KEYWORD|sALIAS); t = pipeline(0); - if (t) { + if (t && t->type == TCOM) { t->str = alloc(2, ATEMP); /* TF_* flags */ t->str[0] = '\0';