From 21991e6ca59274e41a472b5256bd3245f6596c90 Mon Sep 17 00:00:00 2001 From: Koichi Sasada Date: Wed, 20 May 2020 11:38:44 +0900 Subject: Use RUBY_DEBUG instead of NDEBUG Assertions in header files slows down an interpreter, so they should be turned off by default (simple `make`). To enable them, define a macro `RUBY_DEBUG=1` (e.g. `make cppflags=-DRUBY_DEBUG` or use `#define` at the very beggining of the file. Note that even if `NDEBUG=1` is defined, `RUBY_DEBUG=1` enables all assertions. [Feature #16837] related: https://github.com/ruby/ruby/pull/3120 `assert()` lines in MRI *.c is not disabled even if `RUBY_DEBUG=0` and it can be disabled with `NDEBUG=1`. So please consider to use `RUBY_ASSERT()` if you want to disable them when `RUBY_DEBUG=0`. --- include/ruby/internal/attr/const.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'include/ruby/internal/attr/const.h') diff --git a/include/ruby/internal/attr/const.h b/include/ruby/internal/attr/const.h index ca9baa78a5..f3068f9f5e 100644 --- a/include/ruby/internal/attr/const.h +++ b/include/ruby/internal/attr/const.h @@ -36,11 +36,11 @@ # define RBIMPL_ATTR_CONST() /* void */ #endif -/** Enables #RBIMPL_ATTR_CONST iff. #RUBY_NDEBUG. */ -#if RUBY_NDEBUG -# define RBIMPL_ATTR_CONST_ON_NDEBUG() RBIMPL_ATTR_CONST() +/** Enables #RBIMPL_ATTR_CONST iff. !RUBY_DEBUG. */ +#if !RUBY_DEBUG +# define RBIMPL_ATTR_CONST_UNLESS_DEBUG() RBIMPL_ATTR_CONST() #else -# define RBIMPL_ATTR_CONST_ON_NDEBUG() /* void */ +# define RBIMPL_ATTR_CONST_UNLESS_DEBUG() /* void */ #endif #endif /* RBIMPL_ATTR_CONST_H */ -- cgit v1.2.3