ansidecl.h (ATTRIBUTE_NONSTRING): Define.
authorAlan Modra <amodra@gmail.com>
Wed, 2 May 2018 09:51:45 +0000 (19:21 +0930)
committerAlan Modra <amodra@gcc.gnu.org>
Wed, 2 May 2018 09:51:45 +0000 (19:21 +0930)
ATTRIBUTE_NONSTRING

* ansidecl.h (ATTRIBUTE_NONSTRING): Define.

From-SVN: r259832

include/ChangeLog
include/ansidecl.h

index f29ce63cfc99e818ac345e723a4eff3ba82d9412..793ade504832f69bd1cd766bb8b5bfc0c4144bd7 100644 (file)
@@ -1,3 +1,7 @@
+2018-05-02  Alan Modra  <amodra@gmail.com>
+
+       * ansidecl.h (ATTRIBUTE_NONSTRING): Define.
+
 2018-05-01  Sriraman Tallam  <tmsriram@google.com>
 
        * plugin-api.h: Add plugin API to get the list of wrap
index c11daffedb980fa7fa9f3f8297d7d237d9761fae..406473ca9e5c1bc358f200d0f2a40a6bdd4f1195 100644 (file)
@@ -283,6 +283,15 @@ So instead we use the macro below and test it against specific values.  */
 # endif /* GNUC >= 4.9 */
 #endif /* ATTRIBUTE_NO_SANITIZE_UNDEFINED */
 
+/* Attribute 'nonstring' was valid as of gcc 8.  */
+#ifndef ATTRIBUTE_NONSTRING
+# if GCC_VERSION >= 8000
+#  define ATTRIBUTE_NONSTRING __attribute__ ((__nonstring__))
+# else
+#  define ATTRIBUTE_NONSTRING
+# endif
+#endif
+
 /* We use __extension__ in some places to suppress -pedantic warnings
    about GCC extensions.  This feature didn't work properly before
    gcc 2.8.  */