You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@mesos.apache.org by "Joris Van Remoortere (JIRA)" <ji...@apache.org> on 2015/06/24 22:27:04 UTC

[jira] [Comment Edited] (MESOS-2925) Invalid usage of ATOMIC_FLAG_INIT in member initialization

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

Joris Van Remoortere edited comment on MESOS-2925 at 6/24/15 8:26 PM:
----------------------------------------------------------------------

Hi [~pbrett]. Clang 3.7 does error out on OSX due to the braced scaled initializer warning. According to [~tillt] this is something that Apple tends to tweak before they provide the stable releases of clang for OSX?

AFAIK the macro expands to either \{false\} or \{0\}. I don't see why it is harmful to keep using this to initialize the locks. I find the code in the review request harder to read due to the noise. What do you think?


was (Author: jvanremoortere):
Hi [~pbrett]. Clang 3.7 does error out on OSX due to the braced scaled initializer warning. According to [~tillt] this is something that Apple tends to tweak before they provide the stable releases of clang for OSX?

AFAIK the macro expands to either `{false}` or {0}. I don't see why it is harmful to keep using this to initialize the locks. I find the code in the review request harder to read due to the noise. What do you think?

> Invalid usage of ATOMIC_FLAG_INIT in member initialization
> ----------------------------------------------------------
>
>                 Key: MESOS-2925
>                 URL: https://issues.apache.org/jira/browse/MESOS-2925
>             Project: Mesos
>          Issue Type: Bug
>          Components: libprocess
>    Affects Versions: 0.23.0
>            Reporter: Paul Brett
>
> The C++ specification states:
> The macro ATOMIC_FLAG_INIT shall be defined in such a way that it can be used to initialize an object of type atomic_flag to the clear state. The macro can be used in the form: "atomic_flag guard = ATOMIC_FLAG_INIT; "It is unspecified whether the macro can be used in other initialization contexts." 
> Clang catches this (although reports it erroneously as a braced scaled init issue) and refuses to compile libprocess.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)