/* Iterate over arguments from argv or --files0-from=FILE
- Copyright (C) 2008-2009 Free Software Foundation, Inc.
+ Copyright (C) 2008-2010 Free Software Foundation, Inc.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
#include <stdio.h>
#include <stdbool.h>
+/* Definition of _GL_ARG_NONNULL. */
+#include "arg-nonnull.h"
+
struct argv_iterator;
enum argv_iter_err;
-#undef _ATTRIBUTE_NONNULL_
-#if __GNUC__ == 3 && __GNUC_MINOR__ >= 3 || 3 < __GNUC__
-# define _ATTRIBUTE_NONNULL_(m) __attribute__ ((__nonnull__ (m)))
-#else
-# define _ATTRIBUTE_NONNULL_(m)
-#endif
-
enum argv_iter_err
{
AI_ERR_OK = 1,
};
struct argv_iterator *argv_iter_init_argv (char **argv)
- _ATTRIBUTE_NONNULL_ (1);
+ _GL_ARG_NONNULL ((1));
struct argv_iterator *argv_iter_init_stream (FILE *fp)
- _ATTRIBUTE_NONNULL_ (1);
+ _GL_ARG_NONNULL ((1));
char *argv_iter (struct argv_iterator *, enum argv_iter_err *)
- _ATTRIBUTE_NONNULL_ (1) _ATTRIBUTE_NONNULL_ (2);
+ _GL_ARG_NONNULL ((1, 2));
size_t argv_iter_n_args (struct argv_iterator const *)
- _ATTRIBUTE_NONNULL_ (1);
+ _GL_ARG_NONNULL ((1));
void argv_iter_free (struct argv_iterator *)
- _ATTRIBUTE_NONNULL_ (1);
+ _GL_ARG_NONNULL ((1));