Hi,

At Wed, 17 Aug 2011 14:48:59 +0900,
Charlie Savage wrote in [ruby-core:39003]:
> rb_thread_t is *not* public.  ruby-debug-base includes
> vm_core.h directly to get access to rb_thread_t.  So I would
> guess the developers are well aware that it could change at
> any time.  But given the alternative of no debugger at all,
> that seems like a good risk (note that ruby-debug is the ruby
> debugger for RubyMine, Netbeans, Eclipse/Aptana and probably
> any other IDE that is used for Ruby).

Then if ruby-debug can work, do those work all?

But ruby-debug code seems quite outdated; the check for
rb_method_entry_t in extconf.rb doesn't work since 2 years ago.

> So back to the original request.  ruby_thread_data_type is
> already marked as extern and is already publicly exported via
> the *.def file generated when compiling ruby from source.
> But even with this, it doesn't work on VC++ unless the extern
> is changed to RUBY_EXTERN (because RUBY_EXTERN becomes
> __declpec(dllimport) when used by a client).

It was accidentally left exported on only mswin version.
Cygwin and mingw versions don't export it, and fixed now.

-- 
Nobu Nakada