get rid of undefined behavior sanitizer warning
diff --git a/skeletons/asn_system.h b/skeletons/asn_system.h
index 2febb71..83266ef 100644
--- a/skeletons/asn_system.h
+++ b/skeletons/asn_system.h
@@ -104,7 +104,7 @@
#endif /* _WIN32 */
-#if __GNUC__ >= 3
+#if __GNUC__ >= 3 || defined(__clang__)
#ifndef GCC_PRINTFLIKE
#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
#endif
@@ -120,6 +120,12 @@
#endif
#endif
+#if defined(__clang__)
+#define CLANG_NO_SANITIZE(what) __attribute__((no_sanitize(what)))
+#else
+#define CLANG_NO_SANITIZE(what)
+#endif
+
/* Figure out if thread safety is requested */
#if !defined(ASN_THREAD_SAFE) && (defined(THREAD_SAFE) || defined(_REENTRANT))
#define ASN_THREAD_SAFE