From 7763c845beb40231c26d6cf1b11ef838dce5c4a8 Mon Sep 17 00:00:00 2001 From: Chandler Carruth Date: Wed, 20 Oct 2010 08:44:27 +0000 Subject: [PATCH] Add a comment about ATTRIBUTE_UNUSED to avoid further confusion over when to use it. llvm-svn: 116920 --- include/llvm/Support/Compiler.h | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/include/llvm/Support/Compiler.h b/include/llvm/Support/Compiler.h index 9ff78173c96..014e8012828 100644 --- a/include/llvm/Support/Compiler.h +++ b/include/llvm/Support/Compiler.h @@ -31,6 +31,14 @@ #define ATTRIBUTE_USED #endif +// Some compilers warn about unused functions. When a function is sometimes +// used or not depending on build settings (e.g. a function only called from +// within "assert"), this attribute can be used to suppress such warnings. +// +// However, it shouldn't be used for unused *variables*, as those have a much +// more portable solution: +// (void)unused_var_name; +// Prefer cast-to-void wherever it is sufficient. #if (__GNUC__ >= 4 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1)) #define ATTRIBUTE_UNUSED __attribute__((__unused__)) #else