diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-06-20 14:28:49 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2006-06-20 14:28:49 +0000 |
commit | 8446b6c59b3c9eb7c3b6c2163e1c7b26b9359e79 (patch) | |
tree | 9532db298cf1b1e3d569844cca16b317a5acb6c6 | |
parent | 3be20019c163681f0de4dd8185ed46dace888520 (diff) | |
download | ruby-8446b6c59b3c9eb7c3b6c2163e1c7b26b9359e79.tar.gz |
* ext/extmk.rb (parse_args): provisional catch-up for the recent changes.
* lib/optparse.rb (OptionParser::List#summarize, OptionParser#order!): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@10345 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 10 | ||||
-rw-r--r-- | ext/extmk.rb | 8 | ||||
-rw-r--r-- | lib/optparse.rb | 4 |
3 files changed, 16 insertions, 6 deletions
@@ -1,3 +1,9 @@ +Tue Jun 20 23:28:34 2006 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * ext/extmk.rb (parse_args): provisional catch-up for the recent changes. + + * lib/optparse.rb (OptionParser::List#summarize, OptionParser#order!): ditto. + Tue Jun 20 11:07:55 2006 Yukihiro Matsumoto <matz@ruby-lang.org> * eval.c (proc_invoke): intercept break and return from lambda @@ -14,9 +20,9 @@ Tue Jun 20 11:07:55 2006 Yukihiro Matsumoto <matz@ruby-lang.org> * eval.c (rb_yield_0): fix confusion between lambda (which is a property of a proc) and pcall (which depends on whether it's - called via yield or call). + called via yield or call). - * eval.c (rb_thread_yield): no need to specify YIELD_LAMBDA_CALL. + * eval.c (rb_thread_yield): no need to specify YIELD_LAMBDA_CALL. * eval.c (rb_block_pass): update blkid in prot_tag. diff --git a/ext/extmk.rb b/ext/extmk.rb index 1a8f6cf3c3..c3412d4eb6 100644 --- a/ext/extmk.rb +++ b/ext/extmk.rb @@ -213,10 +213,14 @@ def parse_args() opts = nil $optparser ||= OptionParser.new do |opts| opts.on('-n') {$dryrun = true} - opts.on('--[no-]extension [EXTS]', Array) do |v| + opts.on('--[no-]extension [EXTS]', Array) do |*v| + v.compact! + v = v[0] if v.size == 1 and !v[0] $extension = (v == false ? [] : v) end - opts.on('--[no-]extstatic [STATIC]', Array) do |v| + opts.on('--[no-]extstatic [STATIC]', Array) do |*v| + v.compact! + v = v[0] if v.size == 1 and !v[0] if ($extstatic = v) == false $extstatic = [] elsif v diff --git a/lib/optparse.rb b/lib/optparse.rb index c79da48e01..6ecd7e3203 100644 --- a/lib/optparse.rb +++ b/lib/optparse.rb @@ -670,7 +670,7 @@ class OptionParser list.each do |opt| if opt.respond_to?(:summarize) # perhaps OptionParser::Switch opt.summarize(*args, &block) - elsif opt.empty? + elsif !opt or opt.empty? yield("") else opt.each(&block) @@ -1319,7 +1319,7 @@ class OptionParser end begin opt, sw, val = sw.parse(rest, argv) {|*exc| raise(*exc)} - sw.yield(*val) if sw + sw.yield(val) if sw rescue ParseError raise $!.set_option(arg, rest) end |