From: Bil Kleb Date: 2006-09-18T01:06:07+09:00 Subject: Re: ruby-1.8.5 and openssl and gcc 3.2 Nobuyoshi Nakada wrote: > 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 > #include I have this in my ossl.h too: 20 /* 21 * OpenSSL has defined RFILE and Ruby has defined RFILE - so undef it! 22 */ 23 #if defined(RFILE) /*&& !defined(OSSL_DEBUG)*/ 24 # undef RFILE 25 #endif 26 #include 27 #include > RFILE seems redefined somewhere after here. But I can't find another RFILE in /ext/openssl or below... $ cd /ext/openssl && grep -nr RFILE * ossl.h:21:* OpenSSL has defined RFILE and Ruby has defined RFILE - so undef it! ossl.h:23:#if defined(RFILE) /*&& !defined(OSSL_DEBUG)*/ ossl.h:24:# undef RFILE Suggestions? I tried removing the comment from the "#if defined" line and just putting "#undef RFILE' with no apparent effect. Thanks, -- Bil Kleb http://fun3d.larc.nasa.gov