We have been talking for a long time of a debug mode with less impact on performances. I propose to simply use the existing _GLIBCXX_ASSERTIONS macro.     libstdc++: [_GLIBCXX_ASSERTIONS] Activate basic debug checks     Use _GLIBCXX_ASSERTIONS as a _GLIBCXX_DEBUG light mode. When defined it activates     all _GLIBCXX_DEBUG checks but skipping those requiring to loop through the iterator     range unless in case of constexpr.     libstdc++-v3/ChangeLog:             * include/debug/debug.h [_GLIBCXX_ASSERTIONS]: Define debug macros non-empty.             * include/debug/helper_functions.h: Cleanup comment about removed _Iter_base.             * include/debug/functions.h (__skip_debug_runtime_check): New, returns false if             _GLIBCXX_DEBUG is defined or if constant evaluated.             (__check_sorted, __check_partitioned_lower, __check_partitioned_upper): Use latter. Tested under Linux x64. Ok to commit ? François