[#41916] Proposal: Bitmap Marking GC — Narihiro Nakamura <authornari@...>

Hi.

18 messages 2012/01/05

[#41941] [ruby-trunk - Bug #5851][Open] make check fails when compiling with GCC 4.7 - *** longjmp causes uninitialized stack frame *** — Vit Ondruch <v.ondruch@...>

12 messages 2012/01/06

[#41979] [ruby-trunk - Bug #5865][Open] Exception#== should return false if the classes differ — Hiro Asari <asari.ruby@...>

10 messages 2012/01/08

[#42003] [ruby-trunk - Bug #5871][Open] regexp \W matches some word characters when inside a case-insensitive character class — Gareth Adams <gareth@...>

14 messages 2012/01/09

[#42016] [ruby-trunk - Feature #5873][Open] Adopt FFI over DL — Heesob Park <phasis@...>

15 messages 2012/01/10

[#42149] [ruby-trunk - Feature #5899][Open] chaining comparsions. — Ondrej Bilka <neleai@...>

12 messages 2012/01/16

[#42164] [ruby-trunk - Feature #5903][Open] Optimize st_table (take 2) — Yura Sokolov <funny.falcon@...>

18 messages 2012/01/17

[ruby-core:41873] Re: [ruby-trunk - Bug #5833][Open] [mingw] trivial patch for thread.c build warning

From: KOSAKI Motohiro <kosaki.motohiro@...>
Date: 2012-01-02 21:58:27 UTC
List: ruby-core #41873
> Below is a trivial patch that fixes the warning on MinGW. The patch succe=
ssfully builds and tests with MinGW and Windows SDK on Win7 32bit. When bui=
lding on Arch Linux, the patched build gives the same `make test && make te=
st-all` results (6 errors, 45 skips) as an unpatched build. In all other us=
es in `thread.c` (except for `rb_fd_rcopy`) the `rb_fd_max` macro generates=
 a `size_t` object. From what I can tell, use cases are all unsigned int's.
>
> diff --git a/thread.c b/thread.c
> index d9fe5506..0b48061 100644
> --- a/thread.c
> +++ b/thread.c
> @@ -2463,7 +2463,7 @@ rb_fd_init_copy(rb_fdset_t *dst, rb_fdset_t *src)
> =A0static void
> =A0rb_fd_rcopy(fd_set *dst, rb_fdset_t *src)
> =A0{
> - =A0 =A0int max =3D rb_fd_max(src);
> + =A0 =A0size_t max =3D rb_fd_max(src);
>
> =A0 =A0 /* we assume src is the result of select() with dst, so dst shoul=
d be
> =A0 =A0 =A0* larger or equal than src. */

I think rb_fd_max() should return int. Is there any possibility that
fdset->fd_count overflow signed int?

Moreover Windows fd_set::fd_count has u_int type if a documentation is
correct (I saw http://msdn.microsoft.com/en-us/library/windows/desktop/ms73=
7873(v=3Dvs.85).aspx)
and  size_t is not an alias of u_int.

In This Thread