[MacRuby] #598: EXC_BAD_ACCESS when *splatting arguments in method call
#598: EXC_BAD_ACCESS when *splatting arguments in method call ----------------------------+----------------------------------------------- Reporter: me@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: Component: MacRuby | Keywords: ----------------------------+----------------------------------------------- The following class causes the below stack trace and a crash. Removing the line with the splat fixes it. {{{ class FileList < Array def addFiles(files) clear push(*files) files end end }}} {{{ Program received signal: “EXC_BAD_ACCESS”. sharedlibrary apply-load-rules all warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/array.o" - no debug information available for "array.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/bignum.o" - no debug information available for "bignum.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/class.o" - no debug information available for "class.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/compar.o" - no debug information available for "compar.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/complex.o" - no debug information available for "complex.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/enum.o" - no debug information available for "enum.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/enumerator.o" - no debug information available for "enumerator.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/error.o" - no debug information available for "error.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/eval.o" - no debug information available for "eval.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/file.o" - no debug information available for "file.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/load.o" - no debug information available for "load.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/proc.o" - no debug information available for "proc.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/gc.o" - no debug information available for "gc.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/hash.o" - no debug information available for "hash.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/inits.o" - no debug information available for "inits.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/io.o" - no debug information available for "io.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/math.o" - no debug information available for "math.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/numeric.o" - no debug information available for "numeric.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/object.o" - no debug information available for "object.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/pack.o" - no debug information available for "pack.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/parse.o" - no debug information available for "parse.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/prec.o" - no debug information available for "prec.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/dir.o" - no debug information available for "dir.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/process.o" - no debug information available for "process.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/random.o" - no debug information available for "random.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/range.o" - no debug information available for "range.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/rational.o" - no debug information available for "rational.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/re.o" - no debug information available for "re.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regcomp.o" - no debug information available for "onig/regcomp.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regext.o" - no debug information available for "onig/regext.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regposix.o" - no debug information available for "onig/regposix.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regenc.o" - no debug information available for "onig/regenc.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/reggnu.o" - no debug information available for "onig/reggnu.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regsyntax.o" - no debug information available for "onig/regsyntax.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regerror.o" - no debug information available for "onig/regerror.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regparse.o" - no debug information available for "onig/regparse.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regtrav.o" - no debug information available for "onig/regtrav.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regexec.o" - no debug information available for "onig/regexec.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regposerr.o" - no debug information available for "onig/regposerr.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/regversion.o" - no debug information available for "onig/regversion.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/ascii.o" - no debug information available for "onig/enc/ascii.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/unicode.o" - no debug information available for "onig/enc/unicode.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/utf8.o" - no debug information available for "onig/enc/utf8.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/euc_jp.o" - no debug information available for "onig/enc/euc_jp.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/sjis.o" - no debug information available for "onig/enc/sjis.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/iso8859_1.o" - no debug information available for "onig/enc/iso8859_1.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/utf16_be.o" - no debug information available for "onig/enc/utf16_be.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/utf16_le.o" - no debug information available for "onig/enc/utf16_le.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/utf32_be.o" - no debug information available for "onig/enc/utf32_be.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/onig/enc/utf32_le.o" - no debug information available for "onig/enc/utf32_le.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/ruby.o" - no debug information available for "ruby.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/signal.o" - no debug information available for "signal.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/sprintf.o" - no debug information available for "sprintf.cpp". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/st.o" - no debug information available for "st.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/string.o" - no debug information available for "string.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/struct.o" - no debug information available for "struct.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/time.o" - no debug information available for "time.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/transcode.o" - no debug information available for "transcode.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/util.o" - no debug information available for "util.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/variable.o" - no debug information available for "variable.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/version.o" - no debug information available for "version.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/thread.o" - no debug information available for "thread.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/id.o" - no debug information available for "id.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/objc.o" - no debug information available for "objc.m". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/bs.o" - no debug information available for "bs.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/encoding.o" - no debug information available for "encoding.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/dln.o" - no debug information available for "dln.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/dmyext.o" - no debug information available for "dmyext.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/marshal.o" - no debug information available for "marshal.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/gcd.o" - no debug information available for "gcd.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/vm_eval.o" - no debug information available for "vm_eval.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/prelude.o" - no debug information available for "prelude.c". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/bridgesupport.o" - no debug information available for "bridgesupport.cpp". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/compiler.o" - no debug information available for "compiler.cpp". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/dispatcher.o" - no debug information available for "dispatcher.cpp". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/vm.o" - no debug information available for "vm.cpp". warning: Could not find object file "/Users/lrz/src/macruby-0.5-svn/MacRuby.o" - no debug information available for "MacRuby.m". }}} -- Ticket URL: <http://www.macruby.org/trac/ticket/598> MacRuby <http://macruby.org/>
#598: EXC_BAD_ACCESS when *splatting arguments in method call ----------------------------+----------------------------------------------- Reporter: me@… | Owner: lsansonetti@… Type: defect | Status: new Priority: major | Milestone: Component: MacRuby | Keywords: ----------------------------+----------------------------------------------- Comment(by martinlagardette@…): Hi! Thanks for the report, but could you give a little more information? It is quite hard to understand the problem with so little, especially because if I just execute the code, it works for me. How did you install macruby? What arch(s) are you running it on (i386, x86_64)? How did you execute the file? This looks like something that might have been issued via GDB, maybe? Thanks :-) -- Ticket URL: <http://www.macruby.org/trac/ticket/598#comment:1> MacRuby <http://macruby.org/>
#598: EXC_BAD_ACCESS when *splatting arguments in method call ----------------------------+----------------------------------------------- Reporter: me@… | Owner: lsansonetti@… Type: defect | Status: closed Priority: major | Milestone: Component: MacRuby | Resolution: invalid Keywords: | ----------------------------+----------------------------------------------- Changes (by lsansonetti@…): * status: new => closed * resolution: => invalid Comment: This seems to work in trunk. {{{ $ cat t.rb class FileList < Array def addFiles(files) clear push(*files) files end end o=FileList.new p o.addFiles(['a','b','c','d','e']) $ ./miniruby t.rb ["a", "b", "c", "d", "e"] }}} I have no idea what could have been wrong for the reporter. The GDB output does not contain anything meaningful too (no backtrace). Closing. -- Ticket URL: <http://www.macruby.org/trac/ticket/598#comment:2> MacRuby <http://macruby.org/>
participants (1)
-
MacRuby