Issue #13125 has been updated by Robert Mosolgo. > "reverse" of RTEST() How about ... - CTEST() - TEST2BOOL() - C2BOOL() Hope those help brainstorm a bit :) ---------------------------------------- Bug #13125: MRI has too much Qtrue : Qfalse; https://bugs.ruby-lang.org/issues/13125#change-62621 * Author: Shyouhei Urabe * Status: Open * Priority: Normal * Assignee: * Target version: * ruby -v: * Backport: 2.2: UNKNOWN, 2.3: UNKNOWN, 2.4: UNKNOWN ---------------------------------------- ``` % git grep -P 'Q(true|false|nil|undef)\s+:\s+Q(true|false|nil|undef)' | wc -l 211 ``` Out of those 211 occurrences the most interesting lines include: ``` complex.c:#define f_boolcast(x) ((x) ? Qtrue : Qfalse) math.c:#define f_boolcast(x) ((x) ? Qtrue : Qfalse) range.c:#define RBOOL(v) ((v) ? Qtrue : Qfalse) rational.c:#define f_boolcast(x) ((x) ? Qtrue : Qfalse) ``` I strongly believe that we need an orthodox way to do this. -- https://bugs.ruby-lang.org/ Unsubscribe: <mailto:ruby-core-request / ruby-lang.org?subject=unsubscribe> <http://lists.ruby-lang.org/cgi-bin/mailman/options/ruby-core>