Hi, At Sun, 17 Sep 2006 23:21:09 +0900, Bil Kleb wrote in [ruby-talk:214845]: > if (rb_type((VALUE)(obj)) == 0x0e) { > OpenFile *fptr; > rb_io_check_closed((fptr) = ".rnd"(rb_io_taint_check(obj))->fptr); This line has to be: rb_io_check_closed((fptr) = ((struct RFile*)(rb_io_taint_check(obj)))->fptr); In ext/openssl/ossl.h: /* * OpenSSL has defined RFILE and Ruby has defined RFILE - so undef it! */ #if defined(RFILE) /*&& !defined(OSSL_DEBUG)*/ # undef RFILE #endif #include <ruby.h> #include <rubyio.h> RFILE seems redefined somewhere after here. -- Nobu Nakada