Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

compilecheck.hpp

Go to the documentation of this file.
00001 #ifndef FILE_COMPILECHECK_HPP
00002 #define FILE_COMPILECHECK_HPP
00003 
00004 /* Don't compile on egcs
00005 template <bool B>
00006 struct CompileCheck
00007 {};
00008 
00009 struct CompileCheck<true>
00010 {};
00011 
00012 struct CompileCheck<false>
00013 {
00014   // not defined
00015   CompileCheck();
00016 };
00017 */
00018 
00019 /* this work even in C */
00020 #if defined(__GNUC__) && __GNUC__ >= 2
00021 #define COMPILE_CHECK(name,check) \
00022     extern int name[(check)?1:-1] __attribute__ ((unused))
00023 #else
00024 #define COMPILE_CHECK(name,check) \
00025     extern int name[(check)?1:-1]
00026 #endif
00027 
00028 #endif //FILE_COMPILECHECK_HPP

Generated on Mon Jan 13 22:20:34 2003 for perdr by doxygen1.2.15