Project

General

Profile

Actions

Bug #11676

closed

Missing inspect for T_IMEMO during make with -DCPDEBUG=2

Added by norc (Victor Nawothnig) over 8 years ago. Updated over 8 years ago.

Status:
Closed
Target version:
-
ruby -v:
ruby 2.3.0dev (2015-11-10 trunk 52521) [x86_64-darwin14]
[ruby-core:71446]

Description

When I pass -DCPDEBUG=2 (or higher) to the CFLAGS the compilation process fails when miniruby is invoked:

    CC = clang
    LD = ld
    LDSHARED = clang -dynamic -bundle
    CFLAGS = -O0 -fno-fast-math -ggdb3 -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 -Werror=division-by-zero -Werror=deprecated-declarations -Werror=extra-tokens   -pipe  -DCPDEBUG=2
    XCFLAGS = -fstack-protector -fno-strict-overflow -fvisibility=hidden -DRUBY_EXPORT -fPIE
    CPPFLAGS = -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT   -I. -I.ext/include/x86_64-darwin14 -I./include -I.
    DLDFLAGS = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -fstack-protector -Wl,-u,_objc_msgSend -Wl,-pie -framework CoreFoundation
    SOLIBS =

Apple LLVM version 6.1.0 (clang-602.0.53) (based on LLVM 3.6.0svn)
Target: x86_64-apple-darwin14.4.0
Thread model: posix
generating enc.mk

[...] Removed a lot of debug messages from miniruby [...]

[compile step: finish]
[new_child_iseq]< ---------------------------------------
./enc/make_encmake.rb: method `inspect' called on unexpected T_IMEMO object (0x007fd8c2847338 flags=0x703a) (NotImplementedError)
make: *** [enc.mk] Error 1

Since I didn't know any better, I reduced enc/make_encmake.rb to a simple test case (def foo; end) to obtain a stack trace with some frame variables - in case this helps.
The lldb output is attached in the file.

I have also verified the presence of this bug when building under Ubuntu with GCC.


Files

error.txt (7.07 KB) error.txt norc (Victor Nawothnig), 11/11/2015 07:43 AM

Updated by norc (Victor Nawothnig) over 8 years ago

  • Assignee set to ko1 (Koichi Sasada)

Updated by norc (Victor Nawothnig) over 8 years ago

  • Subject changed from Error during make with -DCPDEBUG=2 to Missing inspect for T_IMEMO during make with -DCPDEBUG=2
Actions #3

Updated by ko1 (Koichi Sasada) over 8 years ago

  • Status changed from Open to Closed

Applied in changeset r52667.


  • compile.c (iseq_compile_each): T_IMEMO/iseq objects should be
    wrap with ISeq wrappers. [Bug #11676]
Actions

Also available in: Atom PDF

Like0
Like0Like0Like0