LIBVLC_USED: tag for function whose result must be used
authorRémi Denis-Courmont <rdenis@simphalempin.com>
Sat, 6 Sep 2008 08:28:38 +0000 (11:28 +0300)
committerRémi Denis-Courmont <rdenis@simphalempin.com>
Sat, 6 Sep 2008 08:28:38 +0000 (11:28 +0300)
GCC will print a warning if the result of such function is ignored
This is useful for functions returning an allocated object (which
would leak if ignored), "getter" functions, and functions that are
"likely" to fail.

include/vlc_common.h

index 65158d0..d30e82a 100644 (file)
 # include <stdbool.h>
 #endif
 
+/* Format string sanity checks */
+#ifdef __GNUC__
+#   define LIBVLC_FORMAT(x,y) __attribute__ ((format(printf,x,y)))
+#   define LIBVLC_USED __attribute__ ((warn_unused_result))
+#else
+#   define LIBVLC_FORMAT(x,y)
+#   define LIBVLC_USED
+#endif
+
 /*****************************************************************************
  * Basic types definitions
  *****************************************************************************/
@@ -740,13 +749,6 @@ static inline uint64_t ntoh64 (uint64_t ll)
 }
 #define hton64(i) ntoh64(i)
 
-/* Format string sanity checks */
-#ifdef __GNUC__
-#   define LIBVLC_FORMAT(x,y) __attribute__ ((format(printf,x,y)))
-#else
-#   define LIBVLC_FORMAT(x,y)
-#endif
-
 /* */
 #define VLC_UNUSED(x) (void)(x)