[#63592] [ruby-trunk - Bug #10009] IO operation is 10x slower in multi-thread environment — normalperson@...
Issue #10009 has been updated by Eric Wong.
3 messages
2014/07/08
[#63682] [ruby-trunk - Feature #10030] [PATCH] reduce rb_iseq_struct to 296 bytes — ko1@...
Issue #10030 has been updated by Koichi Sasada.
3 messages
2014/07/13
[#63703] [ruby-trunk - Feature #10030] [PATCH] reduce rb_iseq_struct to 296 bytes — ko1@...
Issue #10030 has been updated by Koichi Sasada.
3 messages
2014/07/14
[#63743] [ruby-trunk - Bug #10037] Since r46798 on Solaris, "[BUG] rb_vm_get_cref: unreachable" during make — ngotogenome@...
Issue #10037 has been updated by Naohisa Goto.
3 messages
2014/07/15
[#64136] Ruby 2.1.2 (and 2.1.1 and probably others) assumes a libffi with 3 version numbers in extconf.rb — "Jeffrey 'jf' Lim" <jfs.world@...>
As per subject.
4 messages
2014/07/31
[#64138] Re: Ruby 2.1.2 (and 2.1.1 and probably others) assumes a libffi with 3 version numbers in extconf.rb
— "Jeffrey 'jf' Lim" <jfs.world@...>
2014/07/31
On Thu, Jul 31, 2014 at 6:03 PM, Jeffrey 'jf' Lim <jfs.world@gmail.com>
[ruby-core:63912] Re: [ruby-cvs:54038] nobu:r46892 (trunk): ruby/io.h: fix rb_io_buffer_t
From:
Eric Wong <normalperson@...>
Date:
2014-07-21 08:25:51 UTC
List:
ruby-core #63912
nobu@ruby-lang.org wrote:
> nobu 2014-07-21 16:04:21 +0900 (Mon, 21 Jul 2014)
>
> New Revision: 46892
>
> http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=46892
>
> Log:
> ruby/io.h: fix rb_io_buffer_t
>
> * include/ruby/io.h (rb_io_buffer_t): fix usage of PACKED_STRUCT().
> it must surround the whole declaration on VC.
I tried that first, but GCC (4.7.2 on Debian) ignores the attribute if
it surrounds typedef.
I think splitting the struct definition and typedef is best:
--- a/include/ruby/io.h
+++ b/include/ruby/io.h
@@ -51,12 +51,13 @@ extern "C" {
RUBY_SYMBOL_EXPORT_BEGIN
-PACKED_STRUCT(typedef struct {
+PACKED_STRUCT(struct rb_io_buffer_t {
char *ptr; /* off + len <= capa */
int off;
int len;
int capa;
-} rb_io_buffer_t);
+});
+typedef struct rb_io_buffer_t rb_io_buffer_t;
typedef struct rb_io_t {
FILE *stdio_file; /* stdio ptr for read/write if available */