emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] /srv/bzr/emacs/trunk r111356: Port EXTERNALLY_VISIBLE to C


From: Paul Eggert
Subject: [Emacs-diffs] /srv/bzr/emacs/trunk r111356: Port EXTERNALLY_VISIBLE to Clang 3.2.
Date: Thu, 27 Dec 2012 19:13:47 -0800
User-agent: Bazaar (2.5.0)

------------------------------------------------------------
revno: 111356
committer: Paul Eggert <address@hidden>
branch nick: trunk
timestamp: Thu 2012-12-27 19:13:47 -0800
message:
  Port EXTERNALLY_VISIBLE to Clang 3.2.
  
  * conf_post.h (__has_attribute): New macro.
  (EXTERNALLY_VISIBLE): Use it.  This ports to Clang 3.2.
modified:
  src/ChangeLog
  src/conf_post.h
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2012-12-27 08:21:08 +0000
+++ b/src/ChangeLog     2012-12-28 03:13:47 +0000
@@ -1,3 +1,9 @@
+2012-12-28  Paul Eggert  <address@hidden>
+
+       Port EXTERNALLY_VISIBLE to Clang 3.2.
+       * conf_post.h (__has_attribute): New macro.
+       (EXTERNALLY_VISIBLE): Use it.  This ports to Clang 3.2.
+
 2012-12-27  Glenn Morris  <address@hidden>
 
        * cygw32.c (Fcygwin_convert_file_name_to_windows)

=== modified file 'src/conf_post.h'
--- a/src/conf_post.h   2012-11-14 04:55:41 +0000
+++ b/src/conf_post.h   2012-12-28 03:13:47 +0000
@@ -40,6 +40,10 @@
 #endif
 #endif
 
+#ifndef __has_attribute
+# define __has_attribute(a) 0 /* non-clang */
+#endif
+
 /* This silences a few compilation warnings on FreeBSD.  */
 #ifdef BSD_SYSTEM_AHB
 #undef BSD_SYSTEM_AHB
@@ -191,7 +195,9 @@
 #define NO_INLINE
 #endif
 
-#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 1))
+#if (__clang__                                                         \
+     ? __has_attribute (externally_visible)                            \
+     : (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 1)))
 #define EXTERNALLY_VISIBLE __attribute__((externally_visible))
 #else
 #define EXTERNALLY_VISIBLE


reply via email to

[Prev in Thread] Current Thread [Next in Thread]