You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@arrow.apache.org by "Wes McKinney (JIRA)" <ji...@apache.org> on 2019/02/22 16:48:00 UTC

[jira] [Commented] (ARROW-4664) [C++] DCHECK macro conditions are evaluated in release builds

    [ https://issues.apache.org/jira/browse/ARROW-4664?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16775368#comment-16775368 ] 

Wes McKinney commented on ARROW-4664:
-------------------------------------

I think this is a rather serious issue actually.

> [C++] DCHECK macro conditions are evaluated in release builds
> -------------------------------------------------------------
>
>                 Key: ARROW-4664
>                 URL: https://issues.apache.org/jira/browse/ARROW-4664
>             Project: Apache Arrow
>          Issue Type: Bug
>          Components: C++
>            Reporter: Benjamin Kietzman
>            Priority: Trivial
>
> {{DCHECK(potentially_expensive())}} will evaluate the argument even in release mode, and is used in several places with the assumption that it will do so (which means removing the guarantee of evaluation causes numerous failures). By contrast, most debug assertion macros elide their arguments entirely ({{<cassert>.assert}}, {{<glog/logging.h>}}) in release mode



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)