diff options
Diffstat (limited to 'src/inc/debugmacrosext.h')
-rw-r--r-- | src/inc/debugmacrosext.h | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/src/inc/debugmacrosext.h b/src/inc/debugmacrosext.h new file mode 100644 index 0000000000..e1aade65b5 --- /dev/null +++ b/src/inc/debugmacrosext.h @@ -0,0 +1,46 @@ +// Licensed to the .NET Foundation under one or more agreements. +// The .NET Foundation licenses this file to you under the MIT license. +// See the LICENSE file in the project root for more information. +//***************************************************************************** +// DebugMacrosExt.h +// +// Simple debugging macros that take no dependencies on CLR headers. +// This header can be used from outside the CLR. +// +//***************************************************************************** + +#ifndef __DebugMacrosExt_h__ +#define __DebugMacrosExt_h__ + +#if !defined(_DEBUG_IMPL) && defined(_DEBUG) && !defined(DACCESS_COMPILE) +#define _DEBUG_IMPL 1 +#endif + +#ifdef _DEBUG +// A macro to execute a statement only in _DEBUG. +#define DEBUG_STMT(stmt) stmt +#define INDEBUG(x) x +#define INDEBUG_COMMA(x) x, +#define COMMA_INDEBUG(x) ,x +#define NOT_DEBUG(x) +#else +#define DEBUG_STMT(stmt) +#define INDEBUG(x) +#define INDEBUG_COMMA(x) +#define COMMA_INDEBUG(x) +#define NOT_DEBUG(x) x +#endif + + +#ifdef _DEBUG_IMPL +#define INDEBUGIMPL(x) x +#define INDEBUGIMPL_COMMA(x) x, +#define COMMA_INDEBUGIMPL(x) ,x +#else +#define INDEBUGIMPL(x) +#define INDEBUGIMPL_COMMA(x) +#define COMMA_INDEBUGIMPL(x) +#endif + + +#endif |