From: "kjtsanaktsidis (KJ Tsanaktsidis) via ruby-core" Date: 2024-02-17T11:24:20+00:00 Subject: [ruby-core:116822] [Ruby master Feature#20274] Add RubyVM::ASAN.enabled? Issue #20274 has been updated by kjtsanaktsidis (KJ Tsanaktsidis). GCC & clang set macros indicating that asan is enabled: https://github.com/ruby/ruby/blob/df63e5bef67ff74216834f61748aa6ea8b0de22e/internal/sanitizers.h#L18 So I was going to implement `RubyVM::ASAN.enabled?` by using conditional compilation to just return Qtrue or Qfalse. Maybe `RbConfig` might be a better place for it? I think I���d have to write some autoconf macros/test program to emit an AC_SUBST about whether asan is enabled. But that should be just as robust. WDYT? ---------------------------------------- Feature #20274: Add RubyVM::ASAN.enabled? https://bugs.ruby-lang.org/issues/20274#change-106847 * Author: kjtsanaktsidis (KJ Tsanaktsidis) * Status: Open * Priority: Normal ---------------------------------------- Some parts of the Ruby test suite won't work correctly under ASAN. In particular, `assert_no_memory_leak` will need different parameters for ASAN (or be skipped, in the same way as for MJIT/RJIT). I propose that we add a module `RubyVM::ASAN` (which will be unconditionally defined), and `RubyVM::ASAN.enabled?` (which will return true if Ruby was compiled with ASAN, or false otherwise). This means we can check if ASAN is enabled by running `defined?(RubyVM::ASAN) && RubyVM::ASAN.enabled?`, in the same way that the mjit/rjit check is performed. -- https://bugs.ruby-lang.org/ ______________________________________________ ruby-core mailing list -- ruby-core@ml.ruby-lang.org To unsubscribe send an email to ruby-core-leave@ml.ruby-lang.org ruby-core info -- https://ml.ruby-lang.org/mailman3/postorius/lists/ruby-core.ml.ruby-lang.org/