1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

* regex.c (re_compile_pattern): fix previous change.

* instruby.rb, ext/extmk.rb, ext/tk/lib/tk.rb, lib/benchmark.rb,
  lib/cgi.rb, lib/debug.rb, lib/getoptlong.rb, lib/jcode.rb,
  lib/optparse.rb, lib/time.rb, lib/date/format.rb,
  lib/irb/ruby-lex.rb: escape `[', `]', `-' in chracter class in
  regexp to avoid warning.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@3595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
akr 2003-03-21 15:13:23 +00:00
parent 108cf940d8
commit 58ef7c2088
14 changed files with 56 additions and 46 deletions

View file

@ -1,3 +1,13 @@
Fri Mar 21 23:40:41 2003 Tanaka Akira <akr@m17n.org>
* regex.c (re_compile_pattern): fix previous change.
* instruby.rb, ext/extmk.rb, ext/tk/lib/tk.rb, lib/benchmark.rb,
lib/cgi.rb, lib/debug.rb, lib/getoptlong.rb, lib/jcode.rb,
lib/optparse.rb, lib/time.rb, lib/date/format.rb,
lib/irb/ruby-lex.rb: escape `[', `]', `-' in chracter class in
regexp to avoid warning.
Fri Mar 21 23:23:45 2003 Yukihiro Matsumoto <matz@ruby-lang.org>
* regex.c (re_compile_pattern): give warning for unescaped square

View file

@ -127,7 +127,7 @@ def parse_args()
$mflags = Shellwords.shellwords(mflags)
if arg = $mflags.first
arg.insert(0, '-') if /\A[^-][^=]*\Z/ =~ arg
arg.insert(0, '-') if /\A[^\-][^=]*\Z/ =~ arg
end
$make, *rest = Shellwords.shellwords($make)

View file

@ -605,7 +605,7 @@ module TkCore
end
def rb_appsend(interp, async, *args)
args = args.collect!{|c| _get_eval_string(c).gsub(/[][$"]/, '\\\\\&')}
args = args.collect!{|c| _get_eval_string(c).gsub(/[\]\[$"]/, '\\\\\&')}
args.push(').to_s"')
appsend(interp, async, 'ruby "(', *args)
end
@ -620,7 +620,7 @@ module TkCore
end
def rb_appsend_displayof(interp, win, async, *args)
args = args.collect!{|c| _get_eval_string(c).gsub(/[][$"]/, '\\\\\&')}
args = args.collect!{|c| _get_eval_string(c).gsub(/[\]\[$"]/, '\\\\\&')}
args.push(').to_s"')
appsend_displayof(interp, win, async, 'ruby "(', *args)
end
@ -1179,14 +1179,14 @@ class TkVariable
elsif val.kind_of?(Array)
a = []
val.each_with_index{|e,i| a.push(i); a.push(array2tk_list(e))}
s = '"' + a.join(" ").gsub(/[][$"]/, '\\\\\&') + '"'
s = '"' + a.join(" ").gsub(/[\]\[$"]/, '\\\\\&') + '"'
INTERP._eval(format('global %s; array set %s %s', @id, @id, s))
elsif val.kind_of?(Hash)
s = '"' + val.to_a.collect{|e| array2tk_list(e)}.join(" ")\
.gsub(/[][$"]/, '\\\\\&') + '"'
.gsub(/[\]\[$"]/, '\\\\\&') + '"'
INTERP._eval(format('global %s; array set %s %s', @id, @id, s))
else
s = '"' + _get_eval_string(val).gsub(/[][$"]/, '\\\\\&') + '"'
s = '"' + _get_eval_string(val).gsub(/[\]\[$"]/, '\\\\\&') + '"'
INTERP._eval(format('global %s; set %s %s', @id, @id, s))
end
end
@ -1214,7 +1214,7 @@ class TkVariable
def value=(val)
begin
s = '"' + _get_eval_string(val).gsub(/[][$"]/, '\\\\\&') + '"'
s = '"' + _get_eval_string(val).gsub(/[\]\[$"]/, '\\\\\&') + '"'
INTERP._eval(format('global %s; set %s %s', @id, @id, s))
rescue
if INTERP._eval(format('global %s; array exists %s', @id, @id)) != "1"
@ -1226,12 +1226,12 @@ class TkVariable
elsif val.kind_of?(Array)
a = []
val.each_with_index{|e,i| a.push(i); a.push(array2tk_list(e))}
s = '"' + a.join(" ").gsub(/[][$"]/, '\\\\\&') + '"'
s = '"' + a.join(" ").gsub(/[\]\[$"]/, '\\\\\&') + '"'
INTERP._eval(format('global %s; unset %s; array set %s %s',
@id, @id, @id, s))
elsif val.kind_of?(Hash)
s = '"' + val.to_a.collect{|e| array2tk_list(e)}.join(" ")\
.gsub(/[][$"]/, '\\\\\&') + '"'
.gsub(/[\]\[$"]/, '\\\\\&') + '"'
INTERP._eval(format('global %s; unset %s; array set %s %s',
@id, @id, @id, s))
else
@ -1438,7 +1438,7 @@ class TkVarAccess<TkVariable
def initialize(varname, val=nil)
@id = varname
if val
s = '"' + _get_eval_string(val).gsub(/[][$"]/, '\\\\\&') + '"' #"
s = '"' + _get_eval_string(val).gsub(/[\]\[$"]/, '\\\\\&') + '"' #"
INTERP._eval(format('global %s; set %s %s', @id, @id, s))
end
end

View file

@ -25,7 +25,7 @@ def parse_args()
$mflags = Shellwords.shellwords(mflags)
if arg = $mflags.first
arg.insert(0, '-') if /\A[^-][^=]*\Z/ =~ arg
arg.insert(0, '-') if /\A[^\-][^=]*\Z/ =~ arg
end
$make, *rest = Shellwords.shellwords($make)

View file

@ -577,13 +577,13 @@ module Benchmark
def format(arg0 = nil, *args)
fmtstr = (arg0 || FMTSTR).dup
fmtstr.gsub!(/(%[-+\.\d]*)n/){"#{$1}s" % label}
fmtstr.gsub!(/(%[-+\.\d]*)u/){"#{$1}f" % utime}
fmtstr.gsub!(/(%[-+\.\d]*)y/){"#{$1}f" % stime}
fmtstr.gsub!(/(%[-+\.\d]*)U/){"#{$1}f" % cutime}
fmtstr.gsub!(/(%[-+\.\d]*)Y/){"#{$1}f" % cstime}
fmtstr.gsub!(/(%[-+\.\d]*)t/){"#{$1}f" % total}
fmtstr.gsub!(/(%[-+\.\d]*)r/){"(#{$1}f)" % real}
fmtstr.gsub!(/(%[\-+\.\d]*)n/){"#{$1}s" % label}
fmtstr.gsub!(/(%[\-+\.\d]*)u/){"#{$1}f" % utime}
fmtstr.gsub!(/(%[\-+\.\d]*)y/){"#{$1}f" % stime}
fmtstr.gsub!(/(%[\-+\.\d]*)U/){"#{$1}f" % cutime}
fmtstr.gsub!(/(%[\-+\.\d]*)Y/){"#{$1}f" % cstime}
fmtstr.gsub!(/(%[\-+\.\d]*)t/){"#{$1}f" % total}
fmtstr.gsub!(/(%[\-+\.\d]*)r/){"(#{$1}f)" % real}
arg0 ? Kernel::format(fmtstr, *args) : fmtstr
end

View file

@ -236,7 +236,7 @@ class CGI
url_encoded_string = CGI::escape("string")
=end
def CGI::escape(string)
string.gsub(/([^ a-zA-Z0-9_.-]+)/n) do
string.gsub(/([^ a-zA-Z0-9_.\-]+)/n) do
'%' + $1.unpack('H2' * $1.size).join('%').upcase
end.tr(' ', '+')
end

View file

@ -80,7 +80,7 @@ class Date
when '%F'
return unless __strptime(str, '%Y-%m-%d', elem)
when '%G'
return unless str.sub!(/\A([-+]?\d+)/o, '')
return unless str.sub!(/\A([\-+]?\d+)/o, '')
val = $1.to_i
elem[:cwyear] = val
when '%g'
@ -163,7 +163,7 @@ class Date
when '%x'
return unless __strptime(str, '%m/%d/%y', elem)
when '%Y'
return unless str.sub!(/\A([-+]?\d+)/o, '')
return unless str.sub!(/\A([\-+]?\d+)/o, '')
val = $1.to_i
elem[:year] = val
when '%y'
@ -173,7 +173,7 @@ class Date
elem[:year] = val
elem[:cent] ||= if val >= 69 then 19 else 20 end
when '%Z', '%z'
return unless str.sub!(/\A([a-z0-9:+-]+(?:\s+dst\b)?)/io, '')
return unless str.sub!(/\A([a-z0-9:+\-]+(?:\s+dst\b)?)/io, '')
val = $1
elem[:zone] = val
offset = zone_to_diff(val)
@ -227,7 +227,7 @@ class Date
def self._parse(str, comp=false)
str = str.dup
str.gsub!(/[^-+.\/:0-9a-z]+/ino, ' ')
str.gsub!(/[^\-+.\/:0-9a-z]+/ino, ' ')
# day
if str.sub!(/(#{PARSE_DAYPAT})\S*/ino, ' ')
@ -246,7 +246,7 @@ class Date
(
[a-z]+(?:\s+dst)?\b
|
[-+]\d+(?::?\d+)
[\-+]\d+(?::?\d+)
)
)?
/inox,
@ -308,7 +308,7 @@ class Date
end
# iso
elsif str.sub!(/([-+]?\d+)-(\d+)-(-?\d+)/no, ' ')
elsif str.sub!(/([\-+]?\d+)-(\d+)-(-?\d+)/no, ' ')
year = $1.to_i
mon = $2.to_i
mday = $3.to_i
@ -363,7 +363,7 @@ class Date
# ddd
elsif str.sub!(
/([-+]?)(\d{4,14})
/([\-+]?)(\d{4,14})
(?:
\s*
T?
@ -375,7 +375,7 @@ class Date
(
Z
|
[-+]\d{2,4}
[\-+]\d{2,4}
)
\b
)?
@ -444,7 +444,7 @@ class Date
if ZONES.include?(abb)
offset = ZONES[abb]
offset += 3600 if dst
elsif /\A([+-])(\d{2}):?(\d{2})?\Z/no =~ str
elsif /\A([+\-])(\d{2}):?(\d{2})?\Z/no =~ str
offset = $2.to_i * 3600 + $3.to_i * 60
offset *= -1 if $1 == '-'
end

View file

@ -425,7 +425,7 @@ class Context
b = previous_line ? previous_line - 10 : binding_line - 5
e = b + 9
else
b, e = $1.split(/[-,]/)
b, e = $1.split(/[\-,]/)
if e
b = b.to_i
e = e.to_i

View file

@ -180,7 +180,7 @@ class GetoptLong
#
next if i == argument_flag
begin
if !i.is_a?(String) || i !~ /^-([^-]|-.+)$/
if !i.is_a?(String) || i !~ /^-([^\-]|-.+)$/
raise ArgumentError, "an invalid option `#{i}'"
end
if (@canonical_names.include?(i))

View file

@ -948,7 +948,7 @@ class RubyLex
allow_point = false
when allow_e && "e", allow_e && "E"
type = TkFLOAT
if peek(0) =~ /[+-]/
if peek(0) =~ /[+\-]/
getc
end
allow_e = false

View file

@ -9,7 +9,7 @@ class String
printf STDERR, "feel free for some warnings:\n" if $VERBOSE
def _regex_quote(str)
str.gsub(/(\\[][\-\\])|\\(.)|([][\\])/) do
str.gsub(/(\\[\]\[\-\\])|\\(.)|([\]\[\\])/) do
$1 || $2 || '\\' + $3
end
end

View file

@ -965,7 +965,7 @@ Default options, which never appear in option summary.
raise ArgumentError, "unsupported argument type: #{o}"
when *ArgumentStyle.keys
style = notwice(ArgumentStyle[o], style, 'style')
when /^--no-([^][=\s]*)(.+)?/
when /^--no-([^\]\[=\s]*)(.+)?/
q, a = $1, $2
o = notwice(a ? Object : TrueClass, klass, 'type')
not_pattern, not_conv = search(:atype, o) unless not_style
@ -975,7 +975,7 @@ Default options, which never appear in option summary.
ldesc << "--no-#{q}"
long << 'no-' + (q = q.downcase)
nolong << q
when /^--\[no-\]([^][=\s]*)(.+)?/
when /^--\[no-\]([^\]\[=\s]*)(.+)?/
q, a = $1, $2
o = notwice(a ? Object : TrueClass, klass, 'type')
if a
@ -987,7 +987,7 @@ Default options, which never appear in option summary.
not_pattern, not_conv = search(:atype, FalseClass) unless not_style
not_style = Switch::NoArgument
nolong << 'no-' + o
when /^--([^][=\s]*)(.+)?/
when /^--([^\]\[=\s]*)(.+)?/
q, a = $1, $2
if a
o = notwice(NilClass, klass, 'type')
@ -1346,14 +1346,14 @@ Default options, which never appear in option summary.
hex = 'x[\da-f]+(?:_[\da-f]+)*'
octal = "0(?:[0-7]*(?:_[0-7]+)*|#{binary}|#{hex})"
integer = "#{octal}|#{decimal}"
accept(Integer, %r"\A[-+]?(?:#{integer})"io) {|s| Integer(s) if s}
accept(Integer, %r"\A[\-+]?(?:#{integer})"io) {|s| Integer(s) if s}
=begin
: Float
Float number format, and converts to (({Float})).
=end #'#"#`#
float = "(?:#{decimal}(?:\\.(?:#{decimal})?)?|\\.#{decimal})(?:E[-+]?#{decimal})?"
floatpat = %r"\A[-+]?#{float}"io
float = "(?:#{decimal}(?:\\.(?:#{decimal})?)?|\\.#{decimal})(?:E[\\-+]?#{decimal})?"
floatpat = %r"\A[\-+]?#{float}"io
accept(Float, floatpat) {|s| s.to_f if s}
=begin
@ -1361,13 +1361,13 @@ Default options, which never appear in option summary.
Generic numeric format, and converts to (({Integer})) for integer
format, (({Float})) for float format.
=end #'#"#`#
accept(Numeric, %r"\A[-+]?(?:#{octal}|#{float})"io) {|s| eval(s) if s}
accept(Numeric, %r"\A[\-+]?(?:#{octal}|#{float})"io) {|s| eval(s) if s}
=begin
: OptionParser::DecimalInteger
Decimal integer format, to be converted to (({Integer})).
=end #'#"#`#
DecimalInteger = /\A[-+]?#{decimal}/io
DecimalInteger = /\A[\-+]?#{decimal}/io
accept(DecimalInteger) {|s| s.to_i if s}
=begin
@ -1375,7 +1375,7 @@ Default options, which never appear in option summary.
Ruby/C like octal/hexadecimal/binary integer format, to be converted
to (({Integer})).
=end #'#"#`#
OctalInteger = /\A[-+]?(?:[0-7]+(?:_[0-7]+)*|0(?:#{binary}|#{hex}))/io
OctalInteger = /\A[\-+]?(?:[0-7]+(?:_[0-7]+)*|0(?:#{binary}|#{hex}))/io
accept(OctalInteger) {|s| s.oct if s}
=begin

View file

@ -69,9 +69,9 @@ class Time
def zone_offset(zone, year=Time.now.year)
off = nil
zone = zone.upcase
if /\A([-+])(\d\d):?(\d\d)\z/ =~ zone
if /\A([\-+])(\d\d):?(\d\d)\z/ =~ zone
off = ($1 == '-' ? -1 : 1) * ($2.to_i * 60 + $3.to_i) * 60
elsif /\A[-+]\d\d\z/ =~ zone
elsif /\A[\-+]\d\d\z/ =~ zone
off = zone.to_i * 3600
elsif ZoneOffset.include?(zone)
off = ZoneOffset[zone] * 3600

View file

@ -185,7 +185,7 @@ static int current_mbctype = MBCTYPE_ASCII;
#ifdef RUBY
#include "util.h"
# re_warning(x) rb_warn(x)
# define re_warning(x) rb_warn(x)
#endif
#ifndef re_warning
@ -1489,6 +1489,8 @@ re_compile_pattern(pattern, size, bufp)
if (c == '-')
re_warning("character class has `-' without escape");
if (c == '[' && *p != ':')
re_warning("character class has `[' without escape");
/* \ escapes characters when inside [...]. */
if (c == '\\') {
@ -1695,8 +1697,6 @@ re_compile_pattern(pattern, size, bufp)
}
}
else if (had_mbchar == 0 && (!current_mbctype || !had_num_literal)) {
if (c == '[')
re_warning("character class has `[' without escape");
SET_LIST_BIT(c);
had_num_literal = 0;
}