mirror of
https://github.com/ruby/ruby.git
synced 2025-08-27 23:16:42 +02:00
![]() possible
(https://github.com/ruby/fiddle/pull/120)
WG14 N2350 made very clear that it is an UB having type definitions
within "offsetof" [1]. This patch enhances the implementation of macro
ALIGN_OF to use builtin "_Alignof" to avoid undefined behavior when
using std=c11 or newer
clang 16+ has started to flag this [2]
Fixes build when using -std >= gnu11 and using clang16+
Older compilers gcc < 4.9 or clang < 8 has buggy _Alignof even though it
may support C11, exclude those compiler versions
[1] https://www.open-std.org/jtc1/sc22/wg14/www/docs/n2350.htm
[2] https://reviews.llvm.org/D133574
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||
---|---|---|
.. | ||
lib | ||
win32 | ||
closure.c | ||
closure.h | ||
conversions.c | ||
conversions.h | ||
depend | ||
extconf.rb | ||
fiddle.c | ||
fiddle.gemspec | ||
fiddle.h | ||
function.c | ||
function.h | ||
handle.c | ||
memory_view.c | ||
pinned.c | ||
pointer.c |