Ruby 4.1.0dev (2026-10-01 revision 528c70471f4c9fbac6d924e684fc397617bdf4be)
Macros
assume.h File Reference

(528c70471f4c9fbac6d924e684fc397617bdf4be)

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define PRISM_ASSUME(expr_)   __builtin_assume(expr_)
 Tell the compiler that the given expression can be assumed to be true.
 

Macro Definition Documentation

◆ PRISM_ASSUME

#define PRISM_ASSUME (   expr_)    __builtin_assume(expr_)

Tell the compiler that the given expression can be assumed to be true.

Unlike assert, this emits no runtime check — it only feeds the optimizer's value range analysis so it can prune impossible paths. Use it to communicate an invariant the caller guarantees but that the compiler cannot otherwise prove.

Definition at line 14 of file assume.h.