diff --git a/alberta_util/src/alberta_util.h.in.in b/alberta_util/src/alberta_util.h.in.in
index 386b9cd0fa4e28fd0fe4436ea9a6fb483f39663e..dcb2ca0aec32f7695aa3cf932d6d1f38e169da05 100644
--- a/alberta_util/src/alberta_util.h.in.in
+++ b/alberta_util/src/alberta_util.h.in.in
@@ -81,14 +81,18 @@ typedef bool _Bool;
 # define __bool_true_false_are_defined 1
 #endif
 
-#if defined(__GNUC__)
+#if HAS_ATTRIBUTE_UNUSED || defined(__GNUC__)
 # define __ATTRIBUTE_UNUSED__ __attribute__((unused))
+#else
+# define __ATTRIBUTE_UNUSED__  /* nothing */
+#endif
+
+#if defined(__GNUC__)
 # define __LIKELY__(arg)   __builtin_expect(arg, true)
 # define __UNLIKELY__(arg) __builtin_expect(arg, false)
 #else
 # define __LIKELY__(arg)       (arg)
 # define __UNLIKELY__(arg)     (arg)
-# define __UNUSED_ATTRIBUTE__  /* nothing */
 #endif
 
 #if !ALBERTA_DEBUG\