diff options
Diffstat (limited to 'Source')
-rw-r--r-- | Source/cmDebugTools.h | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/Source/cmDebugTools.h b/Source/cmDebugTools.h new file mode 100644 index 0000000..99c0c6b --- /dev/null +++ b/Source/cmDebugTools.h @@ -0,0 +1,23 @@ +/* Distributed under the OSI-approved BSD 3-Clause License. See accompanying + file Copyright.txt or https://cmake.org/licensing for details. */ +#pragma once + +#include <iostream> + +#define CM_DBG(expr) cm::dbg_impl(__FILE__, __LINE__, #expr, expr) + +namespace cm { + +namespace { + +template <typename T> +T dbg_impl(const char* fname, int line, const char* expr, T value) +{ + std::cerr << fname << ':' << line << ": " << expr << " = " << value + << std::endl; + return value; +} + +} // namespace + +} // namespace cm |