Issue #14231 has been updated by bircoph (Andrew Savchenko).


Looks like this version affects all ruby versions, though I tested only on 2.4.2 and trunk.


----------------------------------------
Bug #14231: __uint128_t check in hash.c is broken, use 
https://bugs.ruby-lang.org/issues/14231#change-68636

* Author: bircoph (Andrew Savchenko)
* Status: Open
* Priority: Normal
* Assignee: 
* Target version: 
* ruby -v: 
* Backport: 2.3: UNKNOWN, 2.4: UNKNOWN, 2.5: UNKNOWN
----------------------------------------
Current check for __uint128_t in hash.c is not valid, since it ignores
compilers other than gcc. We hit this on lcc on e2k platform.

Configure script properly checks from 128-bit data types support and
sets HAVE_UINT128_T accordingly. This approach is already used within
ruby at bignum.c, random.c, etc.

Probably hash.c is an overlooked remnant of old days. This patch fixes
this.

See also GitHub PR on this issue:
https://github.com/ruby/ruby/pull/1781

---Files--------------------------------
ruby-uint128-check.patch (413 Bytes)


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

Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe>
<http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>