root/include/linux/typecheck.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /* SPDX-License-Identifier: GPL-2.0 */
   2 #ifndef TYPECHECK_H_INCLUDED
   3 #define TYPECHECK_H_INCLUDED
   4 
   5 /*
   6  * Check at compile time that something is of a particular type.
   7  * Always evaluates to 1 so you may use it easily in comparisons.
   8  */
   9 #define typecheck(type,x) \
  10 ({      type __dummy; \
  11         typeof(x) __dummy2; \
  12         (void)(&__dummy == &__dummy2); \
  13         1; \
  14 })
  15 
  16 /*
  17  * Check at compile time that 'function' is a certain type, or is a pointer
  18  * to that type (needs to use typedef for the function type.)
  19  */
  20 #define typecheck_fn(type,function) \
  21 ({      typeof(type) __tmp = function; \
  22         (void)__tmp; \
  23 })
  24 
  25 #endif          /* TYPECHECK_H_INCLUDED */

/* [<][>][^][v][top][bottom][index][help] */