[#26942] core dump with ripper — Tanaka Akira <akr@...17n.org>
ripper で次のように core を吐くことがあるようです。
[#26952] ripper problems. — Tanaka Akira <akr@...17n.org>
ついでに、
[#26954] Re: core dump with ripper — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
[#26962] Re: about Ruby-GetText — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
[#26963] sprintf does not warn in verbose mode. — sheepman <sheepman@...>
こんにちは、sheepman です。
[#26975] [proposal] ANSI style function — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
まつもと ゆきひろです
山本です。
なかだです。
山本です。
まつもと ゆきひろです
山本です。
山本です。
山本です。
まつもと ゆきひろです
山本です。
山本です。
まつもと ゆきひろです
山本です。
In message <20050909220539.E1B26BB8.ocean@m2.ccsnet.ne.jp>
山本です。
山本です。
まつもと ゆきひろです
山本です。
山本です。
まつもと ゆきひろです
山本です。
まつもと ゆきひろです
山本です。
まつもと ゆきひろです
山本です。
山本です。
山本です。
山本です。
まつもと ゆきひろです
山本です。
山本です。
なかだです。
[#26984] elimination of "extern int errno;" — Takahiro Kambe <taca@...>
こんにちは。
In message <20050908.120716.71112483.taca@back-street.net>
まつもと ゆきひろです
In message <1126489480.743964.31599.nullmailer@x31.priv.netlab.jp>
In message <20050912.104954.92585084.taca@back-street.net>
まつもと ゆきひろです
In article <1126491408.019719.1052.nullmailer@x31.priv.netlab.jp>,
In message <87wtlmyasi.fsf@m17n.org>
In article <20050916.201819.92561710.taca@back-street.net>,
In message <878xxx6tab.fsf@m17n.org>
こんにちは、なかむら(う)です。
まつもと ゆきひろです
高橋征義です。
まつもと ゆきひろです
高橋征義です。
山本です。
永井@知能.九工大です.
山本です。
永井@知能.九工大です.
山本です。
永井@知能.九工大です.
[#27051] fail on test/rss — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
なかだです。
まつもと ゆきひろです
まつもと ゆきひろです
まつもと ゆきひろです
[#27123] test/socket/test_tcp.rb blocks on NetBSD — Tanaka Akira <akr@...17n.org>
2005-09-16 から NetBSD で test/socket/test_tcp.rb がブロックするようになっています。
[#27139] ruby-1.8.3 status for release — Masayoshi Takahashi <maki@...>
高橋征義です。
卜部です。
卜部です。
こんにちは、sheepman です。
小西 弘将です。
Masayoshi Takahashi wrote:
助田です。
高橋征義です。
山本です。
こんにちは、なかむら(う)です。
かわじ、です。
山本です。
卜部です。
[#27140] [PATCH] File#chown(nil, nil) — Minero Aoki <aamine@...>
青木です。
[#27141] Interix3 (SFU)サポート — Takahiro Kambe <taca@...>
おはようございます。
[#27150] test_readline.rb blocks on NetBSD. — Tanaka Akira <akr@...17n.org>
NetBSD で、ひさしぶりに端末から ruby を build したところ、test-all 中
前田です。
[#27242] Ruby 1.8.3 released — Yukihiro Matsumoto <matz@...>
Hello Rubyists,
[#27248] glob from command line still broken in djgpp? — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
[#27251] 脆弱性レポート翻訳者募集 — Yukihiro Matsumoto <matz@...>
まつもと ゆきひろです
In message <1127268581.886018.27376.nullmailer@x31.priv.netlab.jp>
[#27275] release schedule plan for 1.8.4 — "NARUSE, Yui" <naruse@...>
成瀬です。
[#27281] env -i make; fails. — "URABE Shyouhei aka.mput" <root@...>
うらべです。
なかだです。
In article <TYOMLEM041XvpFVjCRG00000109@tyomlvem02.e2k.ad.ge.com>,
なかだです。
In article <TYOMLEM04ryWtIIZS2T0000010a@tyomlvem02.e2k.ad.ge.com>,
[#27297] warning of yaml/basenode.rb — 雪見酒 <yukimi_sake@...>
こちらでははじめまして、雪見酒です。
[#27302] warning: 'cdecl' attribute directive ignored — Kazuhiro NISHIYAMA <zn@...>
西山和広です。
[#27321] RubyGemsとOS platformとの関係 — Daigo Moriwaki <techml@...>
こんにちは、森脇です。
なかだです。
まつもと ゆきひろです
西尾瑞穂 と言います。
まつもと ゆきひろです
In article <1127872084.608903.6359.nullmailer@x31.priv.netlab.jp>,
まつもと ゆきひろです
森脇です。
Daigo Moriwaki wrote:
In article <433CC31E.20802@ruby-lang.org>,
Tanaka Akira wrote:
まつもと ゆきひろです
In article <433D4CED.9030005@ruby-lang.org>,
Tanaka Akira wrote:
In article <433E4AF0.5020308@ruby-lang.org>,
[#27324] ext/digest on DrafonFly — Takahiro Kambe <taca@...>
こんにちは。
[#27331] possible SEGV in rb_autoload_load? — "H.Yamamoto" <ocean@...2.ccsnet.ne.jp>
山本です。
[#27334] File#read にゴミがつく — Yusuke ENDOH <mame@...>
はじめまして、遠藤侑介と申します。
なかだです。
[ruby-dev:27273] Re: pragma on ripper
なかだです。
At Wed, 21 Sep 2005 10:50:08 +0900,
nobuyoshi nakada wrote in [ruby-dev:27247]:
> core.rbの更新は完全に手動で管理するようになってしまったようです
> が、せめてparse.yなどを更新したときだけ更新するようにはならない
> でしょうか。
一緒に、testも一応実行できるようにしてみました。まだ
check-scanner-event-coverageが失敗しますが。というか、このへん
のテストはtestディレクトリには移動しないのでしょうか。
Index: ext/ripper/depend
===================================================================
RCS file: /cvs/ruby/src/ruby/ext/ripper/depend,v
retrieving revision 1.11
diff -U2 -p -r1.11 depend
--- ext/ripper/depend 21 Sep 2005 05:17:54 -0000 1.11
+++ ext/ripper/depend 21 Sep 2005 14:17:22 -0000
@@ -1,3 +1,6 @@
+CORE_RB = $(srcdir)/lib/ripper/core.rb
+
c : ripper.c eventids1.c
+rb: $(CORE_RB)
dev: c rb
@@ -26,14 +29,22 @@ ids2: $(srcdir)/tools/list-scan-event-id
# Never make core.rb automatically; it causes line terminator problem.
# See [ruby-dev:26462]
-rb: $(srcdir)/lib/ripper/core.rb.in ids1 ids2 $(srcdir)/tools/generate-ripper_rb.rb
+$(CORE_RB): $(srcdir)/lib/ripper/core.rb.in ids1 ids2 $(srcdir)/tools/generate-ripper_rb.rb
$(RUBY) $(srcdir)/tools/generate-ripper_rb.rb $(srcdir)/lib/ripper/core.rb.in ids1 ids2 > $(srcdir)/lib/ripper/core.rb
-test:
- $(RUBY) test/check-event-arity.rb $(hdrdir)/parse.y
- sh test/check-event-coverage.sh
- $(RUBY) test/check-scanner-event-coverage.rb
- $(RUBY) test/validate.rb > /dev/null
+test: check-event-arity check-event-coverage check-scanner-event-coverage validate
@echo OK
+check-event-arity: $(TARGET_SO) $(srcdir)/test/check-event-arity.rb $(hdrdir)/parse.y
+ $(RUNRUBY) -I$(srcdir) $(srcdir)/test/check-event-arity.rb $(hdrdir)/parse.y
+
+check-event-coverage: $(TARGET_SO) $(srcdir)/test/check-event-coverage.rb $(hdrdir)/parse.y $(srcdir)/test/src_rb
+ $(RUNRUBY) -I$(srcdir) $(srcdir)/test/check-event-coverage.rb $(hdrdir)/parse.y $(srcdir)/test/src_rb
+
+check-scanner-event-coverage: $(TARGET_SO) $(srcdir)/test/check-scanner-event-coverage.rb $(srcdir)/eventids2.c $(hdrdir)/test/ripper/test_scanner_events.rb
+ $(RUNRUBY) -I$(srcdir) $(srcdir)/test/check-scanner-event-coverage.rb $(srcdir)/eventids2.c $(hdrdir)/test/ripper/test_scanner_events.rb
+
+validate: $(TARGET_SO) $(srcdir)/test/validate.rb $(srcdir)/test/src_rb
+ $(RUNRUBY) -I$(srcdir) $(srcdir)/test/validate.rb -q $(srcdir)/test/src_rb
+
preproc: ripper.E
ripper.E: ripper.c
Index: ext/ripper/extconf.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/ext/ripper/extconf.rb,v
retrieving revision 1.3
diff -U2 -p -r1.3 extconf.rb
--- ext/ripper/extconf.rb 15 Dec 2004 19:02:42 -0000 1.3
+++ ext/ripper/extconf.rb 15 Dec 2004 21:59:29 -0000
@@ -5,8 +5,8 @@ require 'rbconfig'
def main
- unless have_command('bison')
+ unless find_executable('bison')
unless File.exist?('ripper.c') or File.exist?("#{$srcdir}/ripper.c")
- $stderr.puts 'missing bison; abort'
- exit 1
+ Logging.message 'missing bison; abort'
+ return
end
end
@@ -18,11 +18,3 @@ def main
end
-def have_command(cmd)
- checking_for(cmd) {
- ENV['PATH'].split(File::PATH_SEPARATOR).any? {|path|
- File.executable?("#{path}/#{cmd}#{Config::CONFIG['EXEEXT']}")
- }
- }
-end
-
main
Index: ext/ripper/test/check-event-coverage.rb
===================================================================
RCS file: ext/ripper/test/check-event-coverage.rb
diff -N ext/ripper/test/check-event-coverage.rb
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ ext/ripper/test/check-event-coverage.rb 21 Sep 2005 07:25:26 -0000
@@ -0,0 +1,22 @@
+# $Id$
+
+require 'tools/list-parse-event-ids.rb'
+require 'ripper.so'
+
+ids = {}
+open(ARGV[0]) {|f| extract_ids(f)}.each {|id, arity| ids[id] = true}
+
+fname = (ARGV[1] || 'test/src_rb')
+
+Class.new(Ripper) do
+ define_method(:method_missing) do |mid, *args|
+ ids.delete(mid.to_s.sub(/^on_/, ''))
+ args[0]
+ end
+ undef :warn
+end.new(File.read(fname), fname, 1).parse
+
+unless ids.empty?
+ puts ids.keys.sort
+ abort
+end
Index: ext/ripper/test/check-scanner-event-coverage.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/ext/ripper/test/check-scanner-event-coverage.rb,v
retrieving revision 1.1
diff -U2 -p -r1.1 check-scanner-event-coverage.rb
--- ext/ripper/test/check-scanner-event-coverage.rb 12 Sep 2004 17:34:29 -0000 1.1
+++ ext/ripper/test/check-scanner-event-coverage.rb 21 Sep 2005 07:30:04 -0000
@@ -1,4 +1,4 @@
def main
- not_tested = eventids() - tested_ids()
+ not_tested = eventids(ARGV[0]) - tested_ids(ARGV[1])
unless not_tested.empty?
puts not_tested
@@ -8,10 +8,12 @@ def main
end
-def eventids
- File.read('eventids2.c').scan(/on__(\w+)/).flatten.uniq
+def eventids(f)
+ f ||= 'eventids2.c'
+ File.read(f).scan(/on_(\w+)/).flatten.uniq
end
-def tested_ids
- File.read('test/test_scanner_events.rb').scan(/def test_(\S+)/).flatten.uniq
+def tested_ids(f)
+ f ||= 'test/test_scanner_events.rb'
+ File.read(f).scan(/def test_(\S+)/).flatten.uniq
end
Index: ext/ripper/test/src_rb
===================================================================
RCS file: /cvs/ruby/src/ruby/ext/ripper/test/src_rb,v
retrieving revision 1.1
diff -U2 -p -r1.1 src_rb
--- ext/ripper/test/src_rb 12 Sep 2004 17:34:29 -0000 1.1
+++ ext/ripper/test/src_rb 21 Sep 2005 07:26:19 -0000
@@ -1,2 +1,3 @@
+# -*- coding-system: none -*-
# comment
=begin
@@ -361,3 +362,6 @@ n = 1 \
+ 1
+# lambda
+->(a) {}
+
__END__
Index: ext/ripper/test/validate.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/ext/ripper/test/validate.rb,v
retrieving revision 1.1
diff -U2 -p -r1.1 validate.rb
--- ext/ripper/test/validate.rb 12 Sep 2004 17:34:29 -0000 1.1
+++ ext/ripper/test/validate.rb 21 Sep 2005 07:32:30 -0000
@@ -2,14 +2,17 @@ require 'ripper.so'
class R < Ripper
+ attr_accessor :verbose
+
def initialize(*args)
super
@lineno = 0
+ @verbose = true
end
def parse
result = super
- puts "#{@lineno}:result: #{rawVALUE(result)}"
+ puts "#{@lineno}:result: #{rawVALUE(result)}" if @verbose
validate_object result
- p result
+ p result if @verbose
result
end
@@ -40,9 +43,9 @@ class R < Ripper
def method_missing(mid, *args)
- puts mid
+ puts mid if @verbose
args.each_with_index do |a,idx|
- puts "#{@lineno}:#{mid}\##{idx+1}: #{rawVALUE(a)}"
+ puts "#{@lineno}:#{mid}\##{idx+1}: #{rawVALUE(a)}" if @verbose
validate_object a
- p a
+ p a if @verbose
end
args[0]
@@ -65,4 +68,10 @@ class R < Ripper
end
+if ARGV[0] == '-q'
+ ARGV.shift
+ quiet = true
+end
fname = (ARGV[0] || 'test/src_rb')
-R.new(File.read(fname), fname, 1).parse
+r = R.new(File.read(fname), fname, 1)
+r.verbose = false if quiet
+r.parse
Index: ext/ripper/tools/generate-ripper_rb.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/ext/ripper/tools/generate-ripper_rb.rb,v
retrieving revision 1.6
diff -U2 -p -r1.6 generate-ripper_rb.rb
--- ext/ripper/tools/generate-ripper_rb.rb 23 Sep 2004 10:49:11 -0000 1.6
+++ ext/ripper/tools/generate-ripper_rb.rb 7 Jul 2005 03:37:26 -0000
@@ -1,4 +1,6 @@
# $Id: generate-ripper_rb.rb,v 1.6 2004/09/23 10:49:11 aamine Exp $
+STDOUT.binmode
+
def main
template, ids1, ids2 = *ARGV
Index: ext/ripper/tools/list-parse-event-ids.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/ext/ripper/tools/list-parse-event-ids.rb,v
retrieving revision 1.3
diff -U2 -p -r1.3 list-parse-event-ids.rb
--- ext/ripper/tools/list-parse-event-ids.rb 19 Sep 2005 05:40:47 -0000 1.3
+++ ext/ripper/tools/list-parse-event-ids.rb 21 Sep 2005 02:15:43 -0000
@@ -37,3 +37,5 @@ def extract_ids(f)
end
-main
+if $0 == __FILE__
+ main
+end
Index: lib/mkmf.rb
===================================================================
RCS file: /cvs/ruby/src/ruby/lib/mkmf.rb,v
retrieving revision 1.228
diff -U2 -p -r1.228 mkmf.rb
--- lib/mkmf.rb 21 Sep 2005 14:31:07 -0000 1.228
+++ lib/mkmf.rb 21 Sep 2005 14:32:11 -0000
@@ -953,4 +953,6 @@ ruby_version = #{Config::CONFIG['ruby_ve
ruby = #{$ruby}
RUBY = $(ruby#{sep})
+MINIRUBY = $(RUBY)
+RUNRUBY = #{$extmk ? CONFIG['RUNRUBY'].sub(/\$\(srcdir\)(\S+)/, '$(hdrdir)\1 --archdir=$(topdir)') : '$(RUBY)'}
RM = #{config_string('RM') || '$(RUBY) -run -e rm -- -f'}
MAKEDIRS = #{config_string('MAKEDIRS') || '@$(RUBY) -run -e mkdir -- -p'}
--
--- 僕の前にBugはない。
--- 僕の後ろにBugはできる。
中田 伸悦