X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=lib%2Fgetopt.pl;h=f871e418501181fd54ec825c254d658692f0f821;hb=3937c24e3f4ed26beafd7a2fbe3a20466bfc2b2d;hp=da39d3b29d43275c28e8d7f761625fef1f44c9ab;hpb=fe14fcc35f78a371a174a1d14256c2f35ae4262b;p=p5sagit%2Fp5-mst-13.2.git diff --git a/lib/getopt.pl b/lib/getopt.pl index da39d3b..f871e41 100644 --- a/lib/getopt.pl +++ b/lib/getopt.pl @@ -1,4 +1,4 @@ -;# $Header: getopt.pl,v 4.0 91/03/20 01:25:11 lwall Locked $ +;# $RCSfile: getopt.pl,v $$Revision: 4.1 $$Date: 92/08/07 18:23:58 $ ;# Process single-character switches with switch clustering. Pass one argument ;# which is a string containing all switches that take an argument. For each @@ -14,7 +14,7 @@ sub Getopt { local($_,$first,$rest); local($[) = 0; - while (($_ = $ARGV[0]) =~ /^-(.)(.*)/) { + while (@ARGV && ($_ = $ARGV[0]) =~ /^-(.)(.*)/) { ($first,$rest) = ($1,$2); if (index($argumentative,$first) >= $[) { if ($rest ne '') { @@ -24,10 +24,10 @@ sub Getopt { shift(@ARGV); $rest = shift(@ARGV); } - eval "\$opt_$first = \$rest;"; + ${"opt_$first"} = $rest; } else { - eval "\$opt_$first = 1;"; + ${"opt_$first"} = 1; if ($rest ne '') { $ARGV[0] = "-$rest"; }