Ben Kietzman created ARROW-6781:
-----------------------------------
Summary: [C++] Improve and consolidate ARROW_CHECK, DCHECK macros
Key: ARROW-6781
URL: https://issues.apache.org/jira/browse/ARROW-6781
Project: Apache Arrow
Issue Type: Improvement
Components: C++
Reporter: Ben Kietzman
Assignee: Ben Kietzman
Currently we have multiple macros like {{DCHECK_EQ}} and {{DCHECK_LT}} which
check various comparisons but don't report anything about their operands.
Furthermore, the "stream to assertion" pattern for appending extra info has
proven fragile. I propose a new unified macro which can capture operands of
comparisons and report them:
{code:cpp}
int three = 3;
int five = 5;
DCHECK(three == five, "extra: ", 1, 2, five);
{code}
Results in check failure messages like:
{code}
F1003 11:12:46.174767 4166 logging_test.cc:141] Check failed: three == five
LHS: 3
RHS: 5
extra: 125
{code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)