From 5b8f8425fe043fbbf32c8768a709ca20e98b115b Mon Sep 17 00:00:00 2001 From: sof Date: Thu, 29 Jul 1999 16:19:33 +0000 Subject: [PATCH] [project @ 1999-07-29 16:19:33 by sof] Fixed bug/limitation in command-line handling. --- ghc/utils/hscpp/hscpp.prl | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/ghc/utils/hscpp/hscpp.prl b/ghc/utils/hscpp/hscpp.prl index fb1bf46..03a8398 100644 --- a/ghc/utils/hscpp/hscpp.prl +++ b/ghc/utils/hscpp/hscpp.prl @@ -15,21 +15,16 @@ $file = ''; $Cpp = ${RAWCPP}; -foreach (@ARGV) { - /^-v$/ && do { $Verbose = 1; next; }; - - /^[^-]/ && do { - if ($file ne '') { - die "usage: hscpp [arg...] file"; - } else { - $file = $_; - }; - next; - }; - +while (@ARGV) { + $_ = $ARGV[0]; + /^-v$/ && do { $Verbose = 1; shift(@ARGV); next; }; + /^[^-]/ && $#ARGV == 0 && do { $file = $_; shift(@ARGV); next; }; push @args, $_; + shift(@ARGV); } +die "usage: hscpp [arg...] file" if ($file eq ''); + print STDERR "hscpp:CPP invoked: $Cpp @args - <$file\n" if $Verbose; open(INPIPE, "$Cpp @args - <$file |") || die "Can't open C pre-processor pipe\n"; -- 1.7.10.4