Issue #5686 has been reported by Martin Dürst. ---------------------------------------- Bug #5686: compile error for ext/tk/tcltklib.c: ???ruby_errinfo??? undeclared http://redmine.ruby-lang.org/issues/5686 Author: Martin Dürst Status: Open Priority: Normal Assignee: Category: ext Target version: ruby -v: ruby 1.8.7 (2008-08-11 patchlevel 72) [i386-cygwin] When compiling ruby trunk, I get a compile error for ext/tk/tcltklib.c (see below). When I do > grep ruby_errinfo * */* */*/* */*/*/* in the top directory, ruby_errinfo shows up in many ChangeLog messages (1.8.0/1.9.3/YARV) that refer to its removal or replacement with rb_errinfo(). There is only one place where ruby_errinfo is used, namely ext/tk/tcltklib.c:#define rb_errinfo() (ruby_errinfo+0) /* cannot be l-value */ (which seems backwards). The situation for ruby_safe_level is the same. Also for is_ruby_native_thread. duerst@jougashima /cygdrive/c/Data/ruby $ make CC = gcc LD = ld LDSHARED = gcc -shared -s CFLAGS = -O3 -g -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=implicit-function-declaration XCFLAGS = -include ruby/config.h -include ruby/missing.h -D_FORTIFY_SOURCE=2 -fstack-protector -fno-strict-overflow -DRUBY_EXPORT CPPFLAGS = -I. -I.ext/include/i386-cygwin -I./include -I. DLDFLAGS = -Wl,--enable-auto-image-base,--enable-auto-import -Wl,--out-implib=libruby191.dll.a cygruby191.def -fstack-protector -Wl,--stack,0x00200000,--enable-auto-import SOLIBS = cygruby191.res.o -lpthread -lrt -ldl -lcrypt [... lots of messages from make deleted ...] make[2]: Entering directory `/cygdrive/c/Data/ruby/ext/tk' compiling tcltklib.c tcltklib.c: In function ???lib_eventloop_core???: tcltklib.c:2264:25: error: ???ruby_errinfo??? undeclared (first use in this function) tcltklib.c:2264:25: note: each undeclared identifier is reported only once for each function it appears in tcltklib.c: In function ???lib_thread_callback???: tcltklib.c:2999:26: error: ???ruby_errinfo??? undeclared (first use in this function) tcltklib.c: In function ???lib_do_one_event_core???: tcltklib.c:3037:9: error: ???ruby_safe_level??? undeclared (first use in this function) tcltklib.c: In function ???tcl_protect_core???: tcltklib.c:3219:49: error: ???ruby_errinfo??? undeclared (first use in this function) tcltklib.c: In function ???tcl_protect???: tcltklib.c:3370:5: warning: implicit declaration of function ???is_ruby_native_thread??? tcltklib.c: In function ???ip_RubyExitObjCmd???: tcltklib.c:3801:9: error: ???ruby_safe_level??? undeclared (first use in this function) tcltklib.c: In function ???ip_init???: tcltklib.c:6151:9: error: ???ruby_safe_level??? undeclared (first use in this function) tcltklib.c: In function ???call_queue_handler???: tcltklib.c:7040:9: error: ???ruby_safe_level??? undeclared (first use in this function) tcltklib.c: In function ???tk_funcall???: tcltklib.c:7192:25: error: ???ruby_safe_level??? undeclared (first use in this function) tcltklib.c: In function ???ip_eval_real???: tcltklib.c:7357:19: error: ???ruby_errinfo??? undeclared (first use in this function) tcltklib.c: In function ???eval_queue_handler???: tcltklib.c:7536:9: error: ???ruby_safe_level??? undeclared (first use in this function) tcltklib.c: In function ???ip_eval???: tcltklib.c:7686:23: error: ???ruby_safe_level??? undeclared (first use in this function) tcltklib.c: In function ???ip_invoke_core???: tcltklib.c:8685:13: error: ???ruby_errinfo??? undeclared (first use in this function) tcltklib.c: In function ???invoke_queue_handler???: tcltklib.c:9026:9: error: ???ruby_safe_level??? undeclared (first use in this function) tcltklib.c: In function ???ip_invoke_with_position???: tcltklib.c:9171:23: error: ???ruby_safe_level??? undeclared (first use in this function) make[2]: *** [tcltklib.o] Error 1 make[2]: Leaving directory `/cygdrive/c/Data/ruby/ext/tk' make[1]: *** [ext/tk/all] Error 2 make[1]: Leaving directory `/cygdrive/c/Data/ruby' make: *** [build-ext] Error 2 -- http://redmine.ruby-lang.org