17 lines
419 B
C++
17 lines
419 B
C++
|
|
#pragma once
|
|
|
|
|
|
|
|
namespace mstatic_assert {
|
|
|
|
template <bool> class compile_time_error;
|
|
template <> class compile_time_error<true> { };
|
|
|
|
}
|
|
|
|
|
|
|
|
#define mstatic_assert(expr) { mstatic_assert::compile_time_error<((expr) != 0)> ERROR_STATIC_ASSERT; (void) ERROR_STATIC_ASSERT; }
|
|
#define mstatic_assert_msg(expr, msg) { mstatic_assert::compile_time_error<((expr) != 0)> ERROR_##msg; (void) ERROR_##msg; }
|