Arg parsing didn't check for duff args (written for an early version of ARGBEGIN ARGEND ?), thus "grep -f" suicide'ed. fixed with EARGF(). -Steve Reference: /n/sources/patch/applied/tiny-grep-silly Date: Sun Aug 8 05:39:51 CES 2004 --- /sys/src/cmd/grep/main.c Sun Aug 8 05:39:50 2004 +++ /sys/src/cmd/grep/main.c Sun Aug 8 05:39:50 2004 @@ -24,12 +24,12 @@ case 'e': flags['e']++; lineno = 0; - str2top(ARGF()); + str2top(EARGF(usage())); break; case 'f': flags['f']++; - filename = ARGF(); + filename = EARGF(usage()); rein = Bopen(filename, OREAD); if(rein == 0) { fprint(2, "grep: can't open %s: %r\n", filename);