am d19f2d85: am 76df69d1: Merge "The err family allow null format strings."

* commit 'd19f2d859f744ded5a70cf0d8a23427eac7ec817':
  The err family allow null format strings.
This commit is contained in:
Elliott Hughes 2014-07-12 02:06:35 +00:00 committed by Android Git Automerger
commit 210a842354

View File

@ -33,50 +33,25 @@
*/
#ifndef _ERR_H_
#define _ERR_H_
#define _ERR_H_
#include <sys/cdefs.h>
#include <sys/types.h>
__BEGIN_DECLS
__noreturn void err(int, const char *, ...)
__printflike(2, 3);
__noreturn void verr(int, const char *, __va_list)
__printflike(2, 0);
__noreturn void errx(int, const char *, ...)
__printflike(2, 3);
__noreturn void verrx(int, const char *, __va_list)
__printflike(2, 0);
void warn(const char *, ...)
__printflike(1, 2);
void vwarn(const char *, __va_list)
__printflike(1, 0);
void warnx(const char *, ...)
__printflike(1, 2);
void vwarnx(const char *, __va_list)
__printflike(1, 0);
/* printf's format string isn't nullable; the err family's one is,
* so we can't use __errlike here. */
#define __errlike(x, y) __attribute__((__format__(printf, x, y)))
/*
* The _* versions are for use in library functions so user-defined
* versions of err*,warn* do not get used.
*/
__noreturn void _err(int, const char *, ...)
__printflike(2, 3);
__noreturn void _verr(int, const char *, __va_list)
__printflike(2, 0);
__noreturn void _errx(int, const char *, ...)
__printflike(2, 3);
__noreturn void _verrx(int, const char *, __va_list)
__printflike(2, 0);
void _warn(const char *, ...)
__printflike(1, 2);
void _vwarn(const char *, __va_list)
__printflike(1, 0);
void _warnx(const char *, ...)
__printflike(1, 2);
void _vwarnx(const char *, __va_list)
__printflike(1, 0);
__noreturn void err(int, const char *, ...) __errlike(2, 3);
__noreturn void verr(int, const char *, __va_list) __errlike(2, 0);
__noreturn void errx(int, const char *, ...) __errlike(2, 3);
__noreturn void verrx(int, const char *, __va_list) __errlike(2, 0);
void warn(const char *, ...) __errlike(1, 2);
void vwarn(const char *, __va_list) __errlike(1, 0);
void warnx(const char *, ...) __errlike(1, 2);
void vwarnx(const char *, __va_list) __errlike(1, 0);
__END_DECLS