libc: Introduce __errordecl()
Define __errordecl and replace __attribute__((__error__("foo")))
with __errordecl. Make sure __errordecl is a no-op on clang, as it
generates a compile time warning.
Change-Id: Ifa1a2d3afd6881de9d479fc2adac6737871a2949
diff --git a/libc/include/fcntl.h b/libc/include/fcntl.h
index de2e3e3..67fd597 100644
--- a/libc/include/fcntl.h
+++ b/libc/include/fcntl.h
@@ -50,11 +50,8 @@
extern int creat(const char* path, mode_t mode);
#if defined(__BIONIC_FORTIFY)
-
-extern void __creat_error()
- __attribute__((__error__ ("called with O_CREAT, but missing mode")));
-extern void __too_many_args_error()
- __attribute__((__error__ ("too many arguments")));
+__errordecl(__creat_error, "called with O_CREAT, but missing mode");
+__errordecl(__too_many_args_error, "too many arguments");
extern int __open_real(const char *pathname, int flags, ...)
__asm__(__USER_LABEL_PREFIX__ "open");
extern int __open_2(const char *, int);