root/maint/gnulib/lib/arg-nonnull.h

/* [previous][next][first][last][top][bottom][index][help] */

INCLUDED FROM


   1 /* A C macro for declaring that specific arguments must not be NULL.
   2    Copyright (C) 2009-2021 Free Software Foundation, Inc.
   3 
   4    This program is free software: you can redistribute it and/or modify it
   5    under the terms of the GNU Lesser General Public License as published
   6    by the Free Software Foundation; either version 2 of the License, or
   7    (at your option) any later version.
   8 
   9    This program is distributed in the hope that it will be useful,
  10    but WITHOUT ANY WARRANTY; without even the implied warranty of
  11    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  12    Lesser General Public License for more details.
  13 
  14    You should have received a copy of the GNU Lesser General Public License
  15    along with this program.  If not, see <https://www.gnu.org/licenses/>.  */
  16 
  17 /* _GL_ARG_NONNULL((n,...,m)) tells the compiler and static analyzer tools
  18    that the values passed as arguments n, ..., m must be non-NULL pointers.
  19    n = 1 stands for the first argument, n = 2 for the second argument etc.  */
  20 #ifndef _GL_ARG_NONNULL
  21 # if __GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 3) || defined __clang__
  22 #  define _GL_ARG_NONNULL(params) __attribute__ ((__nonnull__ params))
  23 # else
  24 #  define _GL_ARG_NONNULL(params)
  25 # endif
  26 #endif

/* [previous][next][first][last][top][bottom][index][help] */