[#64517] Fw: Re: Ruby and Rails to become Apache Incubator Project — Tetsuya Kitahata <[email protected]>

What do you think? >> Ruby developers

13 messages 2014/08/23

[#64615] [ruby-trunk - Feature #10181] [Open] New method File.openat() — oss-ruby-lang@...

Issue #10181 has been reported by Technorama Ltd..

10 messages 2014/08/28
[#64616] Re: [ruby-trunk - Feature #10181] [Open] New method File.openat() — Eric Wong <normalperson@...> 2014/08/28

I like this feature.

[#64671] Fwd: [ruby-changes:35240] normal:r47322 (trunk): symbol.c (rb_sym2id): do not return garbage object — SASADA Koichi <ko1@...>

Why this fix solve your problem?

9 messages 2014/08/30
[#64672] Re: Fwd: [ruby-changes:35240] normal:r47322 (trunk): symbol.c (rb_sym2id): do not return garbage object — SASADA Koichi <ko1@...> 2014/08/30

(2014/08/30 8:50), SASADA Koichi wrote:

[ruby-core:64548] [ruby-trunk - Bug #9692] __builtin_longjmp is called with a value greater than 1 (GCC compilation error)

From: nagachika00@...
Date: 2014-08-25 15:05:04 UTC
List: ruby-core #64548
Issue #9692 has been updated by Tomoyuki Chikanaga.

Backport changed from 2.0.0: REQUIRED, 2.1: REQUIRED to 2.0.0: REQUIRED, 2.=
1: DONE

r45503, r45504, r45508, r45509 and r47275 were backported into `ruby_2_1` b=
ranch at r47276.

----------------------------------------
Bug #9692: __builtin_longjmp is called with a value greater than 1 (GCC com=
pilation error)
https://bugs.ruby-lang.org/issues/9692#change-48476

* Author: Martin Li=C5=A1ka
* Status: Closed
* Priority: Normal
* Assignee:=20
* Category:=20
* Target version:=20
* ruby -v: 2.0.0-p353
* Backport: 2.0.0: REQUIRED, 2.1: DONE
----------------------------------------
Hello,
    during testing of LTO on a gentoo machine:
Linux qemubox 3.12.13-gentoo #2 SMP Fri Mar 28 22:30:38 Local time zone mus=
t be set--see zic  x86_64 Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz GenuineIn=
tel GNU/Linux

Configure detects:

~~~
checking for __builtin_setjmp... yes
checking for setjmp type... __builtin_setjmp
~~~

Problem is that ruby calls longjmp with value greater than 1, e.g. `TAG_RAI=
SE` (0x6). With `-flto` compiler proves that `__builtin_longjmp` is always =
called with such a value and following errors are displayed:

~~~
eval.c: In function =E2=80=98rb_jump_tag=E2=80=99:
eval.c:668:5: error: =E2=80=98__builtin_longjmp=E2=80=99 second argument mu=
st be 1
     JUMP_TAG(tag);
     ^
thread.c: In function =E2=80=98rb_threadptr_to_kill=E2=80=99:
thread.c:1887:5: error: =E2=80=98__builtin_longjmp=E2=80=99 second argument=
 must be 1
     TH_JUMP_TAG(th, TAG_FATAL);
     ^
vm.c: In function =E2=80=98vm_exec=E2=80=99:
vm.c:1413:3: error: =E2=80=98__builtin_longjmp=E2=80=99 second argument mus=
t be 1
   JUMP_TAG(state);
   ^
eval.c: In function =E2=80=98setup_exception=E2=80=99:
eval.c:437:34: error: =E2=80=98__builtin_longjmp=E2=80=99 second argument m=
ust be 1
  if (INTERNAL_EXCEPTION_P(mesg)) JUMP_TAG(TAG_FATAL);
                                  ^
eval.c:502:2: error: =E2=80=98__builtin_longjmp=E2=80=99 second argument mu=
st be 1
  JUMP_TAG(TAG_FATAL);
  ^
eval.c: In function =E2=80=98rb_raise_jump=E2=80=99:
eval.c:662:5: error: =E2=80=98__builtin_longjmp=E2=80=99 second argument mu=
st be 1
     JUMP_TAG(TAG_RAISE);
     ^
eval.c: In function =E2=80=98rb_longjmp=E2=80=99:
eval.c:521:5: error: =E2=80=98__builtin_longjmp=E2=80=99 second argument mu=
st be 1
     JUMP_TAG(tag);
     ^
gc.c: In function =E2=80=98rb_memerror=E2=80=99:
gc.c:3417:2: error: =E2=80=98__builtin_longjmp=E2=80=99 second argument mus=
t be 1
  JUMP_TAG(TAG_RAISE);
  ^
~~~

~~~
gcc --version:
gcc (GCC) 4.9.0 20140331 (experimental)
~~~


---Files--------------------------------
ruby-configure-builtin_longjmp.patch (573 Bytes)


--=20
https://bugs.ruby-lang.org/

In This Thread

Prev Next