| __UNCONST(3) | Library Functions Manual | __UNCONST(3) | 
__UNCONST —
#include <sys/cdefs.h>
void
  
  __UNCONST(x);
void
  
  __UNVOLATILE(x);
__UNCONST() macro can be used to omit warnings
  produced by certain compilers when operating with pointers declared with the
  const type qualifier in a context without such qualifier.
  Examples include passing a pointer declared with the const
  qualifier to a function without such qualifier, and variable assignment from a
  const pointer to a non-const pointer. In the same vein, the
  __UNVOLATILE() macro can be used to exclude warnings
  related to the volatile type qualifier.
__UNCONST() involve an API that does not follow the
  so-called ``const correctness'' even if it would be appropriate. Valid use
  cases of __UNVOLATILE() include passing a
  volatile pointer to
  memset(3).
Use of this macro is non-portable; this is part of the implementation namespace and should only be used in NetBSD code.
| October 17, 2013 | NetBSD 9.3 |