On Feb 27, 2012, at 12:03 AM, nobu / ruby-lang.org wrote: > nobu 2012-02-27 17:03:24 +0900 (Mon, 27 Feb 2012) > > New Revision: 34829 > > http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=34829 > Log: > * ext/bigdecimal/bigdecimal.c (GetVpValueWithPrec): since methods > can be overridden, so should not make an assumption on the type > of results. [ruby-core:42969][Bug #6093] > > Modified files: > trunk/ChangeLog > trunk/ext/bigdecimal/bigdecimal.c > trunk/test/bigdecimal/test_bigdecimal.rb After this change I get: dyld: lazy symbol binding failed: Symbol not found: _nurat_canonicalization r34828 does not have this issue, and I have run `make distclean; autoconf; CC=clang ./configure; make` beforehand. $ make test-all TESTS="bigdecimal -n test_to_d" CC = clang LD = ld LDSHARED = clang -dynamic -bundle CFLAGS = -O3 -ggdb -Wall -Wextra -Wno-unused-parameter -Wno-parentheses -Wno-long-long -Wno-missing-field-initializers -Wunused-variable -Werror=pointer-arith -Werror=write-strings -Werror=declaration-after-statement -Werror=shorten-64-to-32 -Werror=implicit-function-declaration -pipe XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -I. -I.ext/include/x86_64-darwin11.3.0 -I./include -I. DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -Wl,-flat_namespace -fstack-protector -Wl,-u,_objc_msgSend SOLIBS = ./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems "./test/runner.rb" --ruby="./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems" bigdecimal -n test_to_d Run options: "--ruby=./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems" -n test_to_d # Running tests: dyld: lazy symbol binding failed: Symbol not found: _nurat_canonicalization Referenced from: /Users/drbrain/Work/svn/ruby/trunk/.ext/x86_64-darwin11.3.0/mathn/rational.bundle Expected in: flat namespace dyld: Symbol not found: _nurat_canonicalization Referenced from: /Users/drbrain/Work/svn/ruby/trunk/.ext/x86_64-darwin11.3.0/mathn/rational.bundle Expected in: flat namespace F Finished tests in 0.249469s, 4.0085 tests/s, 4.0085 assertions/s. 1) Failure: test_to_d(TestBigDecimal) [/Users/drbrain/Work/svn/ruby/trunk/test/bigdecimal/test_bigdecimal.rb:1311]: [ruby-core:42969] (#<Process::Status: pid 23038 SIGTRAP (signal 5)>) 1 tests, 1 assertions, 1 failures, 0 errors, 0 skips ruby -v: ruby 2.0.0dev (2012-02-28 trunk 34838) [x86_64-darwin11.3.0] make: *** [yes-test-all] Error 1 _nurat_canonicalization appears to exist in the right places, so I am stumped: $ nm miniruby | grep _nurat_canon 00000001000a9e00 t _nurat_canonicalization $ nm libruby-static.a | grep _nurat_canon 0000000000000000 T _nurat_canonicalization 00000000000064a0 S _nurat_canonicalization.eh $ nm .ext/x86_64-darwin11.3.0/mathn/rational.bundle 0000000000000f40 T _Init_rational U _nurat_canonicalization U dyld_stub_binder