mbed library sources. Supersedes mbed-src.
Fork of mbed-dev by
Diff: platform/mbed_debug.h
- Revision:
- 164:289d4deac6e4
- Parent:
- 149:156823d33999
--- a/platform/mbed_debug.h Fri Apr 28 14:04:18 2017 +0100 +++ b/platform/mbed_debug.h Wed May 10 12:06:41 2017 +0100 @@ -18,49 +18,49 @@ */ #ifndef MBED_DEBUG_H #define MBED_DEBUG_H -#include "device.h" +#if DEVICE_STDIO_MESSAGES +#include <stdio.h> +#include <stdarg.h> +#endif #ifdef __cplusplus extern "C" { #endif -#if DEVICE_STDIO_MESSAGES -#include <stdio.h> -#include <stdarg.h> /** Output a debug message * * @param format printf-style format string, followed by variables */ static inline void debug(const char *format, ...) { +#if DEVICE_STDIO_MESSAGES && !defined(NDEBUG) va_list args; va_start(args, format); vfprintf(stderr, format, args); va_end(args); +#endif } + /** Conditionally output a debug message * - * NOTE: If the condition is constant false (!= 1) and the compiler optimization + * NOTE: If the condition is constant false (== 0) and the compiler optimization * level is greater than 0, then the whole function will be compiled away. * - * @param condition output only if condition is true (== 1) + * @param condition output only if condition is true (!= 0) * @param format printf-style format string, followed by variables */ static inline void debug_if(int condition, const char *format, ...) { - if (condition == 1) { +#if DEVICE_STDIO_MESSAGES && !defined(NDEBUG) + if (condition) { va_list args; va_start(args, format); vfprintf(stderr, format, args); va_end(args); } +#endif } -#else -static inline void debug(const char *format, ...) {} -static inline void debug_if(int condition, const char *format, ...) {} - -#endif #ifdef __cplusplus }