From 2ffdb74fb1b12e9f3730d0f152b795838934547d Mon Sep 17 00:00:00 2001 From: whitequark Date: Wed, 17 Jun 2020 19:30:53 +0000 Subject: Use (and ignore) the expression provided to log_assert in NDEBUG builds. This avoids warnings in NDEBUG builds emitted when a variable is only used in log_assert, but is always defined. --- kernel/log.h | 2 +- kernel/macc.h | 2 -- 2 files changed, 1 insertion(+), 3 deletions(-) (limited to 'kernel') diff --git a/kernel/log.h b/kernel/log.h index 501d20c09..ef4b6b456 100644 --- a/kernel/log.h +++ b/kernel/log.h @@ -236,7 +236,7 @@ static inline void log_assert_worker(bool cond, const char *expr, const char *fi } # define log_assert(_assert_expr_) YOSYS_NAMESPACE_PREFIX log_assert_worker(_assert_expr_, #_assert_expr_, __FILE__, __LINE__) #else -# define log_assert(_assert_expr_) +# define log_assert(_assert_expr_) do { if (0) { (void)(_assert_expr_); } } while(0) #endif #define log_abort() YOSYS_NAMESPACE_PREFIX log_error("Abort in %s:%d.\n", __FILE__, __LINE__) diff --git a/kernel/macc.h b/kernel/macc.h index e9f6f05e9..d216e6772 100644 --- a/kernel/macc.h +++ b/kernel/macc.h @@ -107,10 +107,8 @@ struct Macc std::vector config_bits = cell->getParam(ID::CONFIG).bits; int config_cursor = 0; -#ifndef NDEBUG int config_width = cell->getParam(ID::CONFIG_WIDTH).as_int(); log_assert(GetSize(config_bits) >= config_width); -#endif int num_bits = 0; if (config_bits[config_cursor++] == State::S1) num_bits |= 1; -- cgit v1.2.3