public inbox for newlib@sourceware.org
 help / color / mirror / Atom feed
* [PATCH] headers: avoid bareword attributes
@ 2017-08-17  2:07 Eric Blake
  2017-08-17 16:00 ` Corinna Vinschen
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Eric Blake @ 2017-08-17  2:07 UTC (permalink / raw)
  To: newlib

Always use the __-decorated form of an attribute name in public
headers, as the bareword form is in the user's namespace, and we
don't want compilation to break just because the user defines the
bareword to mean something else.

Signed-off-by: Eric Blake <eblake@redhat.com>
---
 newlib/libc/include/sys/cdefs.h      | 28 ++++++++++++++--------------
 newlib/libc/sys/phoenix/sys/unistd.h |  2 +-
 2 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/newlib/libc/include/sys/cdefs.h b/newlib/libc/include/sys/cdefs.h
index 2e63a07a2..9e58ee980 100644
--- a/newlib/libc/include/sys/cdefs.h
+++ b/newlib/libc/include/sys/cdefs.h
@@ -681,42 +681,42 @@
 #endif

 /* Structure implements a lock. */
-#define	__lockable		__lock_annotate(lockable)
+#define	__lockable		__lock_annotate(__lockable__)

 /* Function acquires an exclusive or shared lock. */
 #define	__locks_exclusive(...) \
-	__lock_annotate(exclusive_lock_function(__VA_ARGS__))
+	__lock_annotate(__exclusive_lock_function__(__VA_ARGS__))
 #define	__locks_shared(...) \
-	__lock_annotate(shared_lock_function(__VA_ARGS__))
+	__lock_annotate(__shared_lock_function__(__VA_ARGS__))

 /* Function attempts to acquire an exclusive or shared lock. */
 #define	__trylocks_exclusive(...) \
-	__lock_annotate(exclusive_trylock_function(__VA_ARGS__))
+	__lock_annotate(__exclusive_trylock_function__(__VA_ARGS__))
 #define	__trylocks_shared(...) \
-	__lock_annotate(shared_trylock_function(__VA_ARGS__))
+	__lock_annotate(__shared_trylock_function__(__VA_ARGS__))

 /* Function releases a lock. */
-#define	__unlocks(...)		__lock_annotate(unlock_function(__VA_ARGS__))
+#define	__unlocks(...)		__lock_annotate(__unlock_function__(__VA_ARGS__))

 /* Function asserts that an exclusive or shared lock is held. */
 #define	__asserts_exclusive(...) \
-	__lock_annotate(assert_exclusive_lock(__VA_ARGS__))
+	__lock_annotate(__assert_exclusive_lock__(__VA_ARGS__))
 #define	__asserts_shared(...) \
-	__lock_annotate(assert_shared_lock(__VA_ARGS__))
+	__lock_annotate(__assert_shared_lock__(__VA_ARGS__))

 /* Function requires that an exclusive or shared lock is or is not held. */
 #define	__requires_exclusive(...) \
-	__lock_annotate(exclusive_locks_required(__VA_ARGS__))
+	__lock_annotate(__exclusive_locks_required__(__VA_ARGS__))
 #define	__requires_shared(...) \
-	__lock_annotate(shared_locks_required(__VA_ARGS__))
+	__lock_annotate(__shared_locks_required__(__VA_ARGS__))
 #define	__requires_unlocked(...) \
-	__lock_annotate(locks_excluded(__VA_ARGS__))
+	__lock_annotate(__locks_excluded__(__VA_ARGS__))

 /* Function should not be analyzed. */
-#define	__no_lock_analysis	__lock_annotate(no_thread_safety_analysis)
+#define	__no_lock_analysis	__lock_annotate(__no_thread_safety_analysis__)

 /* Guard variables and structure members by lock. */
-#define	__guarded_by(x)		__lock_annotate(guarded_by(x))
-#define	__pt_guarded_by(x)	__lock_annotate(pt_guarded_by(x))
+#define	__guarded_by(x)		__lock_annotate(__guarded_by__(x))
+#define	__pt_guarded_by(x)	__lock_annotate(__pt_guarded_by__(x))

 #endif /* !_SYS_CDEFS_H_ */
diff --git a/newlib/libc/sys/phoenix/sys/unistd.h b/newlib/libc/sys/phoenix/sys/unistd.h
index bdf5bd529..77b96ddd4 100644
--- a/newlib/libc/sys/phoenix/sys/unistd.h
+++ b/newlib/libc/sys/phoenix/sys/unistd.h
@@ -35,7 +35,7 @@

 extern char **environ;

-void _exit(int status) _ATTRIBUTE ((noreturn));
+void _exit(int status) _ATTRIBUTE ((__noreturn__));

 int	access(const char *pathname, int mode);
 unsigned int alarm(unsigned seconds);
-- 
2.13.5

^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2017-08-25  8:09 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-08-17  2:07 [PATCH] headers: avoid bareword attributes Eric Blake
2017-08-17 16:00 ` Corinna Vinschen
2017-08-23 15:53 ` Sebastian Huber
2017-08-23 18:59   ` Eric Blake
2017-08-24  8:23 ` Sebastian Huber
2017-08-24 19:18   ` Eric Blake
2017-08-25  8:09     ` Sebastian Huber
2017-08-25 12:05       ` Sebastian Huber

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).