Ruby: internal/sanitizers.h File Reference

Ruby 3.0.5p211 (2022-11-24 revision ba5cf0f7c52d4d35cc6a173c89eda98ceffa2dcf)

Macros
sanitizers.h File Reference

Internal header for ASAN / MSAN / etc. More...

`#include "ruby/internal/config.h"`
`#include "internal/compilers.h"`
`#include "ruby/internal/stdbool.h"`
`#include "ruby/ruby.h"`

Go to the source code of this file.

## Macros
#define | ATTRIBUTE_NO_ADDRESS_SAFETY_ANALYSIS(x) __attribute__((__no_sanitize__("memory, address"), __noinline__)) x
#define | NO_SANITIZE(x, y) y
#define | VALGRIND_MAKE_MEM_DEFINED(p, n) 0
#define | VALGRIND_MAKE_MEM_UNDEFINED(p, n) 0
#define | asan_poison_object_if(ptr, obj)

## Detailed Description

Internal header for ASAN / MSAN / etc.

Author
  Ruby developers ruby-.nosp@m.core.nosp@m.@ruby.nosp@m.-lan.nosp@m.g.org

Copyright
  This file is a part of the programming language Ruby. Permission is hereby granted, to either redistribute and/or modify this file, provided that the conditions mentioned in the file COPYING are met. Consult the file for details.

Definition in file sanitizers.h.

## Macro Definition Documentation

## ◆ asan_poison_object_if

#define asan_poison_object_if | ( |  | ptr,
|  |  | obj
| ) |  |

Value:
do { \
if (ptr) asan_poison_object(obj); \
} while (0)
ptr
struct RIMemo * ptr
Definition: debug.c:88

Definition at line 130 of file sanitizers.h.

## ◆ ATTRIBUTE_NO_ADDRESS_SAFETY_ANALYSIS

#define ATTRIBUTE_NO_ADDRESS_SAFETY_ANALYSIS | ( |  | x | ) | __attribute__((__no_sanitize__("memory, address"), __noinline__)) x

Definition at line 34 of file sanitizers.h.

## ◆ NO_SANITIZE

#define NO_SANITIZE | ( |  | x,
|  |  | y
| ) |  | y

Definition at line 61 of file sanitizers.h.

## ◆ VALGRIND_MAKE_MEM_DEFINED

#define VALGRIND_MAKE_MEM_DEFINED | ( |  | p,
|  |  | n
| ) |  | 0

Definition at line 86 of file sanitizers.h.

## ◆ VALGRIND_MAKE_MEM_UNDEFINED

#define VALGRIND_MAKE_MEM_UNDEFINED | ( |  | p,
|  |  | n
| ) |  | 0

Definition at line 90 of file sanitizers.h.