< c‎ | atomic
Defined in header <stdatomic.h>
A kill_dependency(A y);
(since C11)

Informs the compiler that the dependency tree started by an memory_order_consume atomic load operation does not extend past the return value of kill_dependency; that is, the argument does not carry a dependency into the return value.

The function is implemented as a macro. A is the type of y.


y - the expression whose return value is to be removed from a dependency tree

Return value

Returns y, no longer a part of a dependency tree.


  • C11 standard (ISO/IEC 9899:2011):
  • The kill_dependency macro (p: 278)