diff --git a/libc/include/grp.h b/libc/include/grp.h index fc4d52031..ab900223a 100644 --- a/libc/include/grp.h +++ b/libc/include/grp.h @@ -54,9 +54,9 @@ __BEGIN_DECLS struct group *getgrgid(gid_t); struct group *getgrnam(const char *); #if __POSIX_VISIBLE >= 200112 || __XPG_VISIBLE -struct group *getgrent(void); -void setgrent(void); -void endgrent(void); +struct group *getgrent(void) __errorattr("This function is meaningless on Android."); +__errordecl(setgrent, "This function is meaningless on Android."); +__errordecl(endgrent, "This function is meaningless on Android."); int getgrgid_r(gid_t, struct group *, char *, size_t, struct group **); int getgrnam_r(const char *, struct group *, char *, diff --git a/libc/include/sys/cdefs.h b/libc/include/sys/cdefs.h index 48763d730..1d33895e9 100644 --- a/libc/include/sys/cdefs.h +++ b/libc/include/sys/cdefs.h @@ -335,13 +335,15 @@ #endif #if __GNUC_PREREQ(4, 3) -#define __errordecl(name, msg) extern void name(void) __attribute__((__error__(msg))) +#define __errorattr(msg) __attribute__((__error__(msg))) #define __warnattr(msg) __attribute__((__warning__(msg))) #else -#define __errordecl(name, msg) extern void name(void) +#define __errorattr(msg) #define __warnattr(msg) #endif +#define __errordecl(name, msg) extern void name(void) __errorattr(msg) + /* * Some BSD source needs these macros. * Originally they embedded the rcs versions of each source file