Fixed bug 3023886 by changing static check to use unnamed enum.

git-svn-id: svn://svn.code.sf.net/p/loki-lib/code/trunk@1099 7ec92016-0320-0410-acc4-a06ded1c099a
This commit is contained in:
rich_sposato 2011-09-09 00:30:44 +00:00
parent d84589282e
commit 3808e423f2

View file

@ -37,8 +37,10 @@ namespace Loki
// If expr is zero, id will appear in a compile-time error message. // If expr is zero, id will appear in a compile-time error message.
//////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////////
#define LOKI_STATIC_CHECK(expr, msg) \ #define LOKI_CONCAT( X, Y ) LOKI_CONCAT_SUB( X, Y )
{ Loki::CompileTimeError<((expr) != 0)> ERROR_##msg; (void)ERROR_##msg; } #define LOKI_CONCAT_SUB( X, Y ) X##Y
#define LOKI_STATIC_CHECK(expr, msg) enum { LOKI_CONCAT(ERROR_##msg, __LINE__) = sizeof(Loki::CompileTimeError<expr != 0 >) }
#endif // end file guardian #endif // end file guardian