Igor Morozov created MESOS-6809:
-----------------------------------

             Summary: libprocess's namespace "unix" conflicts with some 
preprocessor directives in gcc compiler
                 Key: MESOS-6809
                 URL: https://issues.apache.org/jira/browse/MESOS-6809
             Project: Mesos
          Issue Type: Bug
          Components: libprocess
    Affects Versions: 1.2.0
            Reporter: Igor Morozov
            Priority: Minor


libprocess uses namespace unix like this for example in address.hpp:

#ifndef __WINDOWS__
namespace unix {
class Address;
} // namespace unix {
#endif // __WINDOWS__

GCC defines preprocessor directives with the same name:

gcc -dM -E -std=gnu++11 - < /dev/null | grep unix
#define __unix__ 1
#define __unix 1
#define unix 1

that is causing namespace conflicts and compilation error.

g++ --version
g++ (Debian 4.9.2-10) 4.9.2
Copyright (C) 2014 Free Software Foundation, Inc.

the fix is to change -std=gnu++11 to -std=c++11 whenever possible



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

Reply via email to