From: SourceForge.net <no...@so...> - 2009-09-15 22:28:40
|
Bugs item #2859614, was opened at 2009-09-15 19:28 Message generated for change (Tracker Item Submitted) made by phreakuencies You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: ruby Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Matt (phreakuencies) Assigned to: Gonzalo Garramuno (gga73) Summary: ruby 1.9.1 issues Initial Comment: Using SWIG to wrap some C++ code, using std_vector/std_map and others a few issues arise: g++ -I. -I/opt/ruby1.9/include/ruby-1.9.1/x86_64-linux -I/opt/ruby1.9/include/ruby-1.9.1/ruby/backward -I/opt/ruby1.9/include/ruby-1.9.1 -I. -g -DOGRE_GUI_GLX -DOGRE_CONFIG_LITTLE_ENDIAN -I/usr/include/OGRE -fPIC -march=x86-64 -mtune=native -O2 -pipe -o ExaSim_wrap.o -c ExaSim_wrap.cxx ExaSim_wrap.cxx:4367:112: error: macro "rb_str_new_cstr" passed 2 arguments, but takes just 1 ExaSim_wrap.cxx:2515: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2516: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2517: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2518: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2519: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2520: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2522: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2523: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2524: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2526: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2527: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2528: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2529: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2530: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2532: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2533: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2534: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2536: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2537: error: statement-expressions are not allowed outside functions nor in template-argument lists In file included from /opt/ruby1.9/include/ruby-1.9.1/ruby/ruby.h:1126, from /opt/ruby1.9/include/ruby-1.9.1/ruby.h:32, from ExaSim_wrap.cxx:857: /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h: In function 'VALUE std_list_Sl_ExaSim_Body_Sm__Sg__inspect(std::list<ExaSim::Body*, std::allocator<ExaSim::Body*> >*)': /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h:684: error: invalid conversion from 'VALUE (*)(const char*)' to 'VALUE' make: *** [ExaSim_wrap.o] Error 1 The first error is produced by: VALUE str = rb_str_new2( swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() ); I think the problem is with the macro definition of rb_str_new2 (I imagine it is a macro). If you just do: const char* s = swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() VALUE str = rb_str_new2(s); it works. The second error is caused by: ID GC_VALUE::hash_id = rb_intern("hash"); ID GC_VALUE::lt_id = rb_intern("<"); ID GC_VALUE::gt_id = rb_intern(">"); ID GC_VALUE::eq_id = rb_intern("=="); ID GC_VALUE::le_id = rb_intern("<="); ID GC_VALUE::ge_id = rb_intern(">="); ID GC_VALUE::pos_id = rb_intern("+@"); ID GC_VALUE::neg_id = rb_intern("-@"); ID GC_VALUE::inv_id = rb_intern("~"); ID GC_VALUE::add_id = rb_intern("+"); ID GC_VALUE::sub_id = rb_intern("-"); ID GC_VALUE::mul_id = rb_intern("*"); ID GC_VALUE::div_id = rb_intern("/"); ID GC_VALUE::mod_id = rb_intern("%"); ID GC_VALUE::and_id = rb_intern("&"); ID GC_VALUE::or_id = rb_intern("|"); ID GC_VALUE::xor_id = rb_intern("^"); ID GC_VALUE::lshift_id = rb_intern("<<"); ID GC_VALUE::rshift_id = rb_intern(">>"); VALUE GC_VALUE::_hash = Qnil; typedef GC_VALUE LANGUAGE_OBJ; } // namespace swig rb_intern is not a valid l-value anymore, so these definitions needs to go somewhere else (like in Init_Modulename). The last bug I don't know. Maybe it is due to some macro definition or something. Thanks ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 |
From: SourceForge.net <no...@so...> - 2009-11-24 12:42:43
|
Bugs item #2859614, was opened at 2009-09-15 22:28 Message generated for change (Comment added) made by muffmolch You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: ruby Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Matt (phreakuencies) Assigned to: Gonzalo Garramuno (gga73) Summary: ruby 1.9.1 issues Initial Comment: Using SWIG to wrap some C++ code, using std_vector/std_map and others a few issues arise: g++ -I. -I/opt/ruby1.9/include/ruby-1.9.1/x86_64-linux -I/opt/ruby1.9/include/ruby-1.9.1/ruby/backward -I/opt/ruby1.9/include/ruby-1.9.1 -I. -g -DOGRE_GUI_GLX -DOGRE_CONFIG_LITTLE_ENDIAN -I/usr/include/OGRE -fPIC -march=x86-64 -mtune=native -O2 -pipe -o ExaSim_wrap.o -c ExaSim_wrap.cxx ExaSim_wrap.cxx:4367:112: error: macro "rb_str_new_cstr" passed 2 arguments, but takes just 1 ExaSim_wrap.cxx:2515: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2516: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2517: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2518: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2519: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2520: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2522: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2523: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2524: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2526: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2527: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2528: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2529: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2530: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2532: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2533: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2534: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2536: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2537: error: statement-expressions are not allowed outside functions nor in template-argument lists In file included from /opt/ruby1.9/include/ruby-1.9.1/ruby/ruby.h:1126, from /opt/ruby1.9/include/ruby-1.9.1/ruby.h:32, from ExaSim_wrap.cxx:857: /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h: In function 'VALUE std_list_Sl_ExaSim_Body_Sm__Sg__inspect(std::list<ExaSim::Body*, std::allocator<ExaSim::Body*> >*)': /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h:684: error: invalid conversion from 'VALUE (*)(const char*)' to 'VALUE' make: *** [ExaSim_wrap.o] Error 1 The first error is produced by: VALUE str = rb_str_new2( swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() ); I think the problem is with the macro definition of rb_str_new2 (I imagine it is a macro). If you just do: const char* s = swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() VALUE str = rb_str_new2(s); it works. The second error is caused by: ID GC_VALUE::hash_id = rb_intern("hash"); ID GC_VALUE::lt_id = rb_intern("<"); ID GC_VALUE::gt_id = rb_intern(">"); ID GC_VALUE::eq_id = rb_intern("=="); ID GC_VALUE::le_id = rb_intern("<="); ID GC_VALUE::ge_id = rb_intern(">="); ID GC_VALUE::pos_id = rb_intern("+@"); ID GC_VALUE::neg_id = rb_intern("-@"); ID GC_VALUE::inv_id = rb_intern("~"); ID GC_VALUE::add_id = rb_intern("+"); ID GC_VALUE::sub_id = rb_intern("-"); ID GC_VALUE::mul_id = rb_intern("*"); ID GC_VALUE::div_id = rb_intern("/"); ID GC_VALUE::mod_id = rb_intern("%"); ID GC_VALUE::and_id = rb_intern("&"); ID GC_VALUE::or_id = rb_intern("|"); ID GC_VALUE::xor_id = rb_intern("^"); ID GC_VALUE::lshift_id = rb_intern("<<"); ID GC_VALUE::rshift_id = rb_intern(">>"); VALUE GC_VALUE::_hash = Qnil; typedef GC_VALUE LANGUAGE_OBJ; } // namespace swig rb_intern is not a valid l-value anymore, so these definitions needs to go somewhere else (like in Init_Modulename). The last bug I don't know. Maybe it is due to some macro definition or something. Thanks ---------------------------------------------------------------------- Comment By: Soeren Freudiger (muffmolch) Date: 2009-11-24 12:42 Message: yes, rb_intern as been changed in ver 1.9.x VS 2008 doesn't complain, but that has nothing to say ;-) All gcc 4.x compilers fail with a statement-assigment error. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 |
From: SourceForge.net <no...@so...> - 2009-11-25 10:04:02
|
Bugs item #2859614, was opened at 2009-09-16 10:28 Message generated for change (Comment added) made by olly You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: ruby Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Matt (phreakuencies) Assigned to: Gonzalo Garramuno (gga73) Summary: ruby 1.9.1 issues Initial Comment: Using SWIG to wrap some C++ code, using std_vector/std_map and others a few issues arise: g++ -I. -I/opt/ruby1.9/include/ruby-1.9.1/x86_64-linux -I/opt/ruby1.9/include/ruby-1.9.1/ruby/backward -I/opt/ruby1.9/include/ruby-1.9.1 -I. -g -DOGRE_GUI_GLX -DOGRE_CONFIG_LITTLE_ENDIAN -I/usr/include/OGRE -fPIC -march=x86-64 -mtune=native -O2 -pipe -o ExaSim_wrap.o -c ExaSim_wrap.cxx ExaSim_wrap.cxx:4367:112: error: macro "rb_str_new_cstr" passed 2 arguments, but takes just 1 ExaSim_wrap.cxx:2515: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2516: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2517: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2518: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2519: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2520: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2522: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2523: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2524: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2526: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2527: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2528: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2529: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2530: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2532: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2533: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2534: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2536: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2537: error: statement-expressions are not allowed outside functions nor in template-argument lists In file included from /opt/ruby1.9/include/ruby-1.9.1/ruby/ruby.h:1126, from /opt/ruby1.9/include/ruby-1.9.1/ruby.h:32, from ExaSim_wrap.cxx:857: /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h: In function 'VALUE std_list_Sl_ExaSim_Body_Sm__Sg__inspect(std::list<ExaSim::Body*, std::allocator<ExaSim::Body*> >*)': /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h:684: error: invalid conversion from 'VALUE (*)(const char*)' to 'VALUE' make: *** [ExaSim_wrap.o] Error 1 The first error is produced by: VALUE str = rb_str_new2( swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() ); I think the problem is with the macro definition of rb_str_new2 (I imagine it is a macro). If you just do: const char* s = swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() VALUE str = rb_str_new2(s); it works. The second error is caused by: ID GC_VALUE::hash_id = rb_intern("hash"); ID GC_VALUE::lt_id = rb_intern("<"); ID GC_VALUE::gt_id = rb_intern(">"); ID GC_VALUE::eq_id = rb_intern("=="); ID GC_VALUE::le_id = rb_intern("<="); ID GC_VALUE::ge_id = rb_intern(">="); ID GC_VALUE::pos_id = rb_intern("+@"); ID GC_VALUE::neg_id = rb_intern("-@"); ID GC_VALUE::inv_id = rb_intern("~"); ID GC_VALUE::add_id = rb_intern("+"); ID GC_VALUE::sub_id = rb_intern("-"); ID GC_VALUE::mul_id = rb_intern("*"); ID GC_VALUE::div_id = rb_intern("/"); ID GC_VALUE::mod_id = rb_intern("%"); ID GC_VALUE::and_id = rb_intern("&"); ID GC_VALUE::or_id = rb_intern("|"); ID GC_VALUE::xor_id = rb_intern("^"); ID GC_VALUE::lshift_id = rb_intern("<<"); ID GC_VALUE::rshift_id = rb_intern(">>"); VALUE GC_VALUE::_hash = Qnil; typedef GC_VALUE LANGUAGE_OBJ; } // namespace swig rb_intern is not a valid l-value anymore, so these definitions needs to go somewhere else (like in Init_Modulename). The last bug I don't know. Maybe it is due to some macro definition or something. Thanks ---------------------------------------------------------------------- >Comment By: Olly Betts (olly) Date: 2009-11-25 23:04 Message: I work around this in Xapian by postprocessing the generated C++ wrapper to add "#undef rb_intern" after "#include <ruby.h>" which disables the memoisation optimisation which causes this problem. I do this using awk like this: [generate wrapper with SWIG to xapian_wrap.cc] awk '{print} /#include <ruby\.h>/{print "#undef rb_intern\n"}' xapian_wrap.cc > xapian_wrap.tmp mv xapian_wrap.tmp xapian_wrap.cc Unless anyone with actual Ruby skills or knowledge has a better idea, perhaps we should make SWIG just do this as standard. Better suggestions most welcome. ---------------------------------------------------------------------- Comment By: Soeren Freudiger (muffmolch) Date: 2009-11-25 01:42 Message: yes, rb_intern as been changed in ver 1.9.x VS 2008 doesn't complain, but that has nothing to say ;-) All gcc 4.x compilers fail with a statement-assigment error. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 |
From: SourceForge.net <no...@so...> - 2009-11-25 10:04:53
|
Bugs item #2859614, was opened at 2009-09-16 10:28 Message generated for change (Comment added) made by olly You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: ruby Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Matt (phreakuencies) Assigned to: Gonzalo Garramuno (gga73) Summary: ruby 1.9.1 issues Initial Comment: Using SWIG to wrap some C++ code, using std_vector/std_map and others a few issues arise: g++ -I. -I/opt/ruby1.9/include/ruby-1.9.1/x86_64-linux -I/opt/ruby1.9/include/ruby-1.9.1/ruby/backward -I/opt/ruby1.9/include/ruby-1.9.1 -I. -g -DOGRE_GUI_GLX -DOGRE_CONFIG_LITTLE_ENDIAN -I/usr/include/OGRE -fPIC -march=x86-64 -mtune=native -O2 -pipe -o ExaSim_wrap.o -c ExaSim_wrap.cxx ExaSim_wrap.cxx:4367:112: error: macro "rb_str_new_cstr" passed 2 arguments, but takes just 1 ExaSim_wrap.cxx:2515: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2516: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2517: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2518: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2519: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2520: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2522: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2523: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2524: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2526: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2527: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2528: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2529: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2530: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2532: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2533: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2534: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2536: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2537: error: statement-expressions are not allowed outside functions nor in template-argument lists In file included from /opt/ruby1.9/include/ruby-1.9.1/ruby/ruby.h:1126, from /opt/ruby1.9/include/ruby-1.9.1/ruby.h:32, from ExaSim_wrap.cxx:857: /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h: In function 'VALUE std_list_Sl_ExaSim_Body_Sm__Sg__inspect(std::list<ExaSim::Body*, std::allocator<ExaSim::Body*> >*)': /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h:684: error: invalid conversion from 'VALUE (*)(const char*)' to 'VALUE' make: *** [ExaSim_wrap.o] Error 1 The first error is produced by: VALUE str = rb_str_new2( swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() ); I think the problem is with the macro definition of rb_str_new2 (I imagine it is a macro). If you just do: const char* s = swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() VALUE str = rb_str_new2(s); it works. The second error is caused by: ID GC_VALUE::hash_id = rb_intern("hash"); ID GC_VALUE::lt_id = rb_intern("<"); ID GC_VALUE::gt_id = rb_intern(">"); ID GC_VALUE::eq_id = rb_intern("=="); ID GC_VALUE::le_id = rb_intern("<="); ID GC_VALUE::ge_id = rb_intern(">="); ID GC_VALUE::pos_id = rb_intern("+@"); ID GC_VALUE::neg_id = rb_intern("-@"); ID GC_VALUE::inv_id = rb_intern("~"); ID GC_VALUE::add_id = rb_intern("+"); ID GC_VALUE::sub_id = rb_intern("-"); ID GC_VALUE::mul_id = rb_intern("*"); ID GC_VALUE::div_id = rb_intern("/"); ID GC_VALUE::mod_id = rb_intern("%"); ID GC_VALUE::and_id = rb_intern("&"); ID GC_VALUE::or_id = rb_intern("|"); ID GC_VALUE::xor_id = rb_intern("^"); ID GC_VALUE::lshift_id = rb_intern("<<"); ID GC_VALUE::rshift_id = rb_intern(">>"); VALUE GC_VALUE::_hash = Qnil; typedef GC_VALUE LANGUAGE_OBJ; } // namespace swig rb_intern is not a valid l-value anymore, so these definitions needs to go somewhere else (like in Init_Modulename). The last bug I don't know. Maybe it is due to some macro definition or something. Thanks ---------------------------------------------------------------------- >Comment By: Olly Betts (olly) Date: 2009-11-25 23:04 Message: BTW, the reason why other compilers don't complain is that the ruby headers only try to use this optimisation for GCC. ---------------------------------------------------------------------- Comment By: Olly Betts (olly) Date: 2009-11-25 23:04 Message: I work around this in Xapian by postprocessing the generated C++ wrapper to add "#undef rb_intern" after "#include <ruby.h>" which disables the memoisation optimisation which causes this problem. I do this using awk like this: [generate wrapper with SWIG to xapian_wrap.cc] awk '{print} /#include <ruby\.h>/{print "#undef rb_intern\n"}' xapian_wrap.cc > xapian_wrap.tmp mv xapian_wrap.tmp xapian_wrap.cc Unless anyone with actual Ruby skills or knowledge has a better idea, perhaps we should make SWIG just do this as standard. Better suggestions most welcome. ---------------------------------------------------------------------- Comment By: Soeren Freudiger (muffmolch) Date: 2009-11-25 01:42 Message: yes, rb_intern as been changed in ver 1.9.x VS 2008 doesn't complain, but that has nothing to say ;-) All gcc 4.x compilers fail with a statement-assigment error. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 |
From: SourceForge.net <no...@so...> - 2009-11-25 12:15:05
|
Bugs item #2859614, was opened at 2009-09-15 19:28 Message generated for change (Comment added) made by phreakuencies You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: ruby Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Matt (phreakuencies) Assigned to: Gonzalo Garramuno (gga73) Summary: ruby 1.9.1 issues Initial Comment: Using SWIG to wrap some C++ code, using std_vector/std_map and others a few issues arise: g++ -I. -I/opt/ruby1.9/include/ruby-1.9.1/x86_64-linux -I/opt/ruby1.9/include/ruby-1.9.1/ruby/backward -I/opt/ruby1.9/include/ruby-1.9.1 -I. -g -DOGRE_GUI_GLX -DOGRE_CONFIG_LITTLE_ENDIAN -I/usr/include/OGRE -fPIC -march=x86-64 -mtune=native -O2 -pipe -o ExaSim_wrap.o -c ExaSim_wrap.cxx ExaSim_wrap.cxx:4367:112: error: macro "rb_str_new_cstr" passed 2 arguments, but takes just 1 ExaSim_wrap.cxx:2515: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2516: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2517: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2518: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2519: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2520: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2522: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2523: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2524: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2526: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2527: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2528: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2529: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2530: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2532: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2533: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2534: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2536: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2537: error: statement-expressions are not allowed outside functions nor in template-argument lists In file included from /opt/ruby1.9/include/ruby-1.9.1/ruby/ruby.h:1126, from /opt/ruby1.9/include/ruby-1.9.1/ruby.h:32, from ExaSim_wrap.cxx:857: /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h: In function 'VALUE std_list_Sl_ExaSim_Body_Sm__Sg__inspect(std::list<ExaSim::Body*, std::allocator<ExaSim::Body*> >*)': /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h:684: error: invalid conversion from 'VALUE (*)(const char*)' to 'VALUE' make: *** [ExaSim_wrap.o] Error 1 The first error is produced by: VALUE str = rb_str_new2( swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() ); I think the problem is with the macro definition of rb_str_new2 (I imagine it is a macro). If you just do: const char* s = swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() VALUE str = rb_str_new2(s); it works. The second error is caused by: ID GC_VALUE::hash_id = rb_intern("hash"); ID GC_VALUE::lt_id = rb_intern("<"); ID GC_VALUE::gt_id = rb_intern(">"); ID GC_VALUE::eq_id = rb_intern("=="); ID GC_VALUE::le_id = rb_intern("<="); ID GC_VALUE::ge_id = rb_intern(">="); ID GC_VALUE::pos_id = rb_intern("+@"); ID GC_VALUE::neg_id = rb_intern("-@"); ID GC_VALUE::inv_id = rb_intern("~"); ID GC_VALUE::add_id = rb_intern("+"); ID GC_VALUE::sub_id = rb_intern("-"); ID GC_VALUE::mul_id = rb_intern("*"); ID GC_VALUE::div_id = rb_intern("/"); ID GC_VALUE::mod_id = rb_intern("%"); ID GC_VALUE::and_id = rb_intern("&"); ID GC_VALUE::or_id = rb_intern("|"); ID GC_VALUE::xor_id = rb_intern("^"); ID GC_VALUE::lshift_id = rb_intern("<<"); ID GC_VALUE::rshift_id = rb_intern(">>"); VALUE GC_VALUE::_hash = Qnil; typedef GC_VALUE LANGUAGE_OBJ; } // namespace swig rb_intern is not a valid l-value anymore, so these definitions needs to go somewhere else (like in Init_Modulename). The last bug I don't know. Maybe it is due to some macro definition or something. Thanks ---------------------------------------------------------------------- >Comment By: Matt (phreakuencies) Date: 2009-11-25 10:15 Message: Well, I think it could be solved by setting these variables at runtime, instead of at parse-time. That's why I talked about doing this in Init_ModuleName, but I don't know how SWIG organizes the extension code since it is quite complex. I'll try the undef trick later, thanks. ---------------------------------------------------------------------- Comment By: Olly Betts (olly) Date: 2009-11-25 08:04 Message: BTW, the reason why other compilers don't complain is that the ruby headers only try to use this optimisation for GCC. ---------------------------------------------------------------------- Comment By: Olly Betts (olly) Date: 2009-11-25 08:04 Message: I work around this in Xapian by postprocessing the generated C++ wrapper to add "#undef rb_intern" after "#include <ruby.h>" which disables the memoisation optimisation which causes this problem. I do this using awk like this: [generate wrapper with SWIG to xapian_wrap.cc] awk '{print} /#include <ruby\.h>/{print "#undef rb_intern\n"}' xapian_wrap.cc > xapian_wrap.tmp mv xapian_wrap.tmp xapian_wrap.cc Unless anyone with actual Ruby skills or knowledge has a better idea, perhaps we should make SWIG just do this as standard. Better suggestions most welcome. ---------------------------------------------------------------------- Comment By: Soeren Freudiger (muffmolch) Date: 2009-11-24 10:42 Message: yes, rb_intern as been changed in ver 1.9.x VS 2008 doesn't complain, but that has nothing to say ;-) All gcc 4.x compilers fail with a statement-assigment error. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 |
From: SourceForge.net <no...@so...> - 2009-12-04 08:53:53
|
Bugs item #2859614, was opened at 2009-09-16 10:28 Message generated for change (Comment added) made by olly You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: ruby Group: None Status: Open Resolution: None Priority: 5 Private: No Submitted By: Matt (phreakuencies) Assigned to: Gonzalo Garramuno (gga73) Summary: ruby 1.9.1 issues Initial Comment: Using SWIG to wrap some C++ code, using std_vector/std_map and others a few issues arise: g++ -I. -I/opt/ruby1.9/include/ruby-1.9.1/x86_64-linux -I/opt/ruby1.9/include/ruby-1.9.1/ruby/backward -I/opt/ruby1.9/include/ruby-1.9.1 -I. -g -DOGRE_GUI_GLX -DOGRE_CONFIG_LITTLE_ENDIAN -I/usr/include/OGRE -fPIC -march=x86-64 -mtune=native -O2 -pipe -o ExaSim_wrap.o -c ExaSim_wrap.cxx ExaSim_wrap.cxx:4367:112: error: macro "rb_str_new_cstr" passed 2 arguments, but takes just 1 ExaSim_wrap.cxx:2515: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2516: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2517: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2518: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2519: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2520: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2522: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2523: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2524: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2526: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2527: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2528: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2529: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2530: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2532: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2533: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2534: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2536: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2537: error: statement-expressions are not allowed outside functions nor in template-argument lists In file included from /opt/ruby1.9/include/ruby-1.9.1/ruby/ruby.h:1126, from /opt/ruby1.9/include/ruby-1.9.1/ruby.h:32, from ExaSim_wrap.cxx:857: /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h: In function 'VALUE std_list_Sl_ExaSim_Body_Sm__Sg__inspect(std::list<ExaSim::Body*, std::allocator<ExaSim::Body*> >*)': /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h:684: error: invalid conversion from 'VALUE (*)(const char*)' to 'VALUE' make: *** [ExaSim_wrap.o] Error 1 The first error is produced by: VALUE str = rb_str_new2( swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() ); I think the problem is with the macro definition of rb_str_new2 (I imagine it is a macro). If you just do: const char* s = swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() VALUE str = rb_str_new2(s); it works. The second error is caused by: ID GC_VALUE::hash_id = rb_intern("hash"); ID GC_VALUE::lt_id = rb_intern("<"); ID GC_VALUE::gt_id = rb_intern(">"); ID GC_VALUE::eq_id = rb_intern("=="); ID GC_VALUE::le_id = rb_intern("<="); ID GC_VALUE::ge_id = rb_intern(">="); ID GC_VALUE::pos_id = rb_intern("+@"); ID GC_VALUE::neg_id = rb_intern("-@"); ID GC_VALUE::inv_id = rb_intern("~"); ID GC_VALUE::add_id = rb_intern("+"); ID GC_VALUE::sub_id = rb_intern("-"); ID GC_VALUE::mul_id = rb_intern("*"); ID GC_VALUE::div_id = rb_intern("/"); ID GC_VALUE::mod_id = rb_intern("%"); ID GC_VALUE::and_id = rb_intern("&"); ID GC_VALUE::or_id = rb_intern("|"); ID GC_VALUE::xor_id = rb_intern("^"); ID GC_VALUE::lshift_id = rb_intern("<<"); ID GC_VALUE::rshift_id = rb_intern(">>"); VALUE GC_VALUE::_hash = Qnil; typedef GC_VALUE LANGUAGE_OBJ; } // namespace swig rb_intern is not a valid l-value anymore, so these definitions needs to go somewhere else (like in Init_Modulename). The last bug I don't know. Maybe it is due to some macro definition or something. Thanks ---------------------------------------------------------------------- >Comment By: Olly Betts (olly) Date: 2009-12-04 21:53 Message: In the absence of anyone offering a better patch, I've applied the "#undef rb_intern" workaround to trunk r11775. There are still a lot of failures in the testsuite with Ruby 1.9, but there are probably a small number of causes. ---------------------------------------------------------------------- Comment By: Matt (phreakuencies) Date: 2009-11-26 01:15 Message: Well, I think it could be solved by setting these variables at runtime, instead of at parse-time. That's why I talked about doing this in Init_ModuleName, but I don't know how SWIG organizes the extension code since it is quite complex. I'll try the undef trick later, thanks. ---------------------------------------------------------------------- Comment By: Olly Betts (olly) Date: 2009-11-25 23:04 Message: BTW, the reason why other compilers don't complain is that the ruby headers only try to use this optimisation for GCC. ---------------------------------------------------------------------- Comment By: Olly Betts (olly) Date: 2009-11-25 23:04 Message: I work around this in Xapian by postprocessing the generated C++ wrapper to add "#undef rb_intern" after "#include <ruby.h>" which disables the memoisation optimisation which causes this problem. I do this using awk like this: [generate wrapper with SWIG to xapian_wrap.cc] awk '{print} /#include <ruby\.h>/{print "#undef rb_intern\n"}' xapian_wrap.cc > xapian_wrap.tmp mv xapian_wrap.tmp xapian_wrap.cc Unless anyone with actual Ruby skills or knowledge has a better idea, perhaps we should make SWIG just do this as standard. Better suggestions most welcome. ---------------------------------------------------------------------- Comment By: Soeren Freudiger (muffmolch) Date: 2009-11-25 01:42 Message: yes, rb_intern as been changed in ver 1.9.x VS 2008 doesn't complain, but that has nothing to say ;-) All gcc 4.x compilers fail with a statement-assigment error. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 |
From: SourceForge.net <no...@so...> - 2010-02-13 17:12:53
|
Bugs item #2859614, was opened at 2009-09-15 22:28 Message generated for change (Comment added) made by wsfulton You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: ruby Group: None >Status: Closed Resolution: None Priority: 5 Private: No Submitted By: Matt (phreakuencies) Assigned to: Gonzalo Garramuno (gga73) Summary: ruby 1.9.1 issues Initial Comment: Using SWIG to wrap some C++ code, using std_vector/std_map and others a few issues arise: g++ -I. -I/opt/ruby1.9/include/ruby-1.9.1/x86_64-linux -I/opt/ruby1.9/include/ruby-1.9.1/ruby/backward -I/opt/ruby1.9/include/ruby-1.9.1 -I. -g -DOGRE_GUI_GLX -DOGRE_CONFIG_LITTLE_ENDIAN -I/usr/include/OGRE -fPIC -march=x86-64 -mtune=native -O2 -pipe -o ExaSim_wrap.o -c ExaSim_wrap.cxx ExaSim_wrap.cxx:4367:112: error: macro "rb_str_new_cstr" passed 2 arguments, but takes just 1 ExaSim_wrap.cxx:2515: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2516: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2517: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2518: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2519: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2520: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2522: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2523: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2524: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2526: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2527: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2528: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2529: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2530: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2532: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2533: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2534: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2536: error: statement-expressions are not allowed outside functions nor in template-argument lists ExaSim_wrap.cxx:2537: error: statement-expressions are not allowed outside functions nor in template-argument lists In file included from /opt/ruby1.9/include/ruby-1.9.1/ruby/ruby.h:1126, from /opt/ruby1.9/include/ruby-1.9.1/ruby.h:32, from ExaSim_wrap.cxx:857: /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h: In function 'VALUE std_list_Sl_ExaSim_Body_Sm__Sg__inspect(std::list<ExaSim::Body*, std::allocator<ExaSim::Body*> >*)': /opt/ruby1.9/include/ruby-1.9.1/ruby/intern.h:684: error: invalid conversion from 'VALUE (*)(const char*)' to 'VALUE' make: *** [ExaSim_wrap.o] Error 1 The first error is produced by: VALUE str = rb_str_new2( swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() ); I think the problem is with the macro definition of rb_str_new2 (I imagine it is a macro). If you just do: const char* s = swig::type_name< std::list<ExaSim::Body*,std::allocator< ExaSim::Body * > > >() VALUE str = rb_str_new2(s); it works. The second error is caused by: ID GC_VALUE::hash_id = rb_intern("hash"); ID GC_VALUE::lt_id = rb_intern("<"); ID GC_VALUE::gt_id = rb_intern(">"); ID GC_VALUE::eq_id = rb_intern("=="); ID GC_VALUE::le_id = rb_intern("<="); ID GC_VALUE::ge_id = rb_intern(">="); ID GC_VALUE::pos_id = rb_intern("+@"); ID GC_VALUE::neg_id = rb_intern("-@"); ID GC_VALUE::inv_id = rb_intern("~"); ID GC_VALUE::add_id = rb_intern("+"); ID GC_VALUE::sub_id = rb_intern("-"); ID GC_VALUE::mul_id = rb_intern("*"); ID GC_VALUE::div_id = rb_intern("/"); ID GC_VALUE::mod_id = rb_intern("%"); ID GC_VALUE::and_id = rb_intern("&"); ID GC_VALUE::or_id = rb_intern("|"); ID GC_VALUE::xor_id = rb_intern("^"); ID GC_VALUE::lshift_id = rb_intern("<<"); ID GC_VALUE::rshift_id = rb_intern(">>"); VALUE GC_VALUE::_hash = Qnil; typedef GC_VALUE LANGUAGE_OBJ; } // namespace swig rb_intern is not a valid l-value anymore, so these definitions needs to go somewhere else (like in Init_Modulename). The last bug I don't know. Maybe it is due to some macro definition or something. Thanks ---------------------------------------------------------------------- >Comment By: William Fulton (wsfulton) Date: 2010-02-13 17:12 Message: I've applied the rb_str_new2 modification you mentioned in various places. The problem in std_list_Sl_ExaSim_Body_Sm__Sg__inspec is also fixed now in svn. The test-suite is compiling and running fine with 1.8.7 and compiles fine with 1.9.1, although I do see some runtime problems. Closing. ---------------------------------------------------------------------- Comment By: Olly Betts (olly) Date: 2009-12-04 08:53 Message: In the absence of anyone offering a better patch, I've applied the "#undef rb_intern" workaround to trunk r11775. There are still a lot of failures in the testsuite with Ruby 1.9, but there are probably a small number of causes. ---------------------------------------------------------------------- Comment By: Matt (phreakuencies) Date: 2009-11-25 12:15 Message: Well, I think it could be solved by setting these variables at runtime, instead of at parse-time. That's why I talked about doing this in Init_ModuleName, but I don't know how SWIG organizes the extension code since it is quite complex. I'll try the undef trick later, thanks. ---------------------------------------------------------------------- Comment By: Olly Betts (olly) Date: 2009-11-25 10:04 Message: BTW, the reason why other compilers don't complain is that the ruby headers only try to use this optimisation for GCC. ---------------------------------------------------------------------- Comment By: Olly Betts (olly) Date: 2009-11-25 10:04 Message: I work around this in Xapian by postprocessing the generated C++ wrapper to add "#undef rb_intern" after "#include <ruby.h>" which disables the memoisation optimisation which causes this problem. I do this using awk like this: [generate wrapper with SWIG to xapian_wrap.cc] awk '{print} /#include <ruby\.h>/{print "#undef rb_intern\n"}' xapian_wrap.cc > xapian_wrap.tmp mv xapian_wrap.tmp xapian_wrap.cc Unless anyone with actual Ruby skills or knowledge has a better idea, perhaps we should make SWIG just do this as standard. Better suggestions most welcome. ---------------------------------------------------------------------- Comment By: Soeren Freudiger (muffmolch) Date: 2009-11-24 12:42 Message: yes, rb_intern as been changed in ver 1.9.x VS 2008 doesn't complain, but that has nothing to say ;-) All gcc 4.x compilers fail with a statement-assigment error. ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=101645&aid=2859614&group_id=1645 |