include/linux/bug.h | 47 ++++++++++++++++++++++------------------ include/linux/compiler-gcc.h | 3 ++ include/linux/compiler-gcc3.h | 8 +++--- include/linux/compiler-gcc4.h | 28 ++++++++++++------------ include/linux/compiler.h | 32 +++++++++++++++++++++++++-- 5 files changed, 76 insertions(+), 42 deletions(-) Changes in v6: o Remove extraneous double negation o Fixed faulty macro expansion in last patch Changes in v5: o Move BUILD_BUG* guts to a new compiletime_assert() macro in compiler.h. o Fix a double-evaluation problem. o Fix another bad macro definition when __CHECKER__ defined. Changes in v4: o Squash a minor commit (per Borislav Petkov) o Change some comment text (per Borislav Petkov) o Add some acks This patch set is a dependency of the generic red-black tree patch set, which I have now split up into three smaller sets and is based off of linux-next. The major aim of this patch set is to cleanup compiler-gcc*.h and improve the manageability of of compiler features at various versions (when they are broken, etc.), add some needed features to bug.h and clean that up as well. compiler-gcc*.h o Introduce GCC_VERSION - (e.g., gcc 4.7.1 becomes 40701). o Reorder all features based upon the version introduced (readability). o Change all version checks to use GCC_VERSION. o Remove redundant __linktime_error macro. o Introduce compiletime_assert() macro. bug.h o Improve BUILD_BUG_ON(expr) - now generates compile-time error post-gcc-4.4 o Remove duplicate error messages in some cases. o Fix double-evaluation problem in BUILD_BUG_ON. o Fix bad macro definitions when using __CHECKER__. o Introduce BUILD_BUG_ON_MSG and clean up the implementations of the BUILD_BUG* macros. -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html