James Peach created MESOS-8763:
----------------------------------
Summary: Enable -Wshadow in the build.
Key: MESOS-8763
URL: https://issues.apache.org/jira/browse/MESOS-8763
Project: Mesos
Issue Type: Improvement
Components: build
Reporter: James Peach
Shadowed variables are a source of confusion and bugs. We should enable
{{-Wshadow}} and eliminated these permanently. We would need to solve the
shadowing issues that we get from our 3rd party dependencies.
{noformat}
In file included from ../../src/common/protobuf_utils.cpp:28:
In file included from ../../include/mesos/slave/isolator.hpp:27:
In file included from ../../3rdparty/libprocess/include/process/dispatch.hpp:20:
../../3rdparty/libprocess/include/process/process.hpp:242:54: error:
declaration shadows a field of 'process::ProcessBase' [-Werror,-Wshadow]
void delegate(const std::string& name, const UPID& pid)
^
../../3rdparty/libprocess/include/process/process.hpp:488:8: note: previous
declaration is here
UPID pid;
^
In file included from ../../src/common/protobuf_utils.cpp:53:
In file included from ../../src/master/master.hpp:51:
../../3rdparty/libprocess/include/process/protobuf.hpp:460:12: error:
declaration shadows a local variable [-Werror,-Wshadow]
{ Req* req = nullptr; google::protobuf::Message* m = req; (void)m; }
^
../../3rdparty/libprocess/include/process/protobuf.hpp:457:18: note: previous
declaration is here
const Req& req) const
^
In file included from ../../src/common/protobuf_utils.cpp:53:
In file included from ../../src/master/master.hpp:54:
In file included from
../../3rdparty/libprocess/include/process/metrics/counter.hpp:19:
In file included from
../../3rdparty/libprocess/include/process/metrics/metric.hpp:22:
In file included from
../../3rdparty/libprocess/include/process/statistics.hpp:21:
../../3rdparty/libprocess/include/process/timeseries.hpp:106:24: error:
declaration shadows a field of 'TimeSeries<T>' [-Werror,-Wshadow]
std::vector<Value> values;
^
../../3rdparty/libprocess/include/process/timeseries.hpp:242:21: note: previous
declaration is here
std::map<Time, T> values;
^
In file included from ../../src/common/protobuf_utils.cpp:53:
In file included from ../../src/master/master.hpp:79:
In file included from ../../src/master/flags.hpp:36:
In file included from ../../src/messages/flags.hpp:30:
../../src/common/parse.hpp:119:35: error: declaration shadows a local variable
[-Werror,-Wshadow]
const JSON::Value& value,
^
../../src/common/parse.hpp:108:72: note: previous declaration is here
inline Try<hashmap<std::string, std::string>> parse(const std::string& value)
^
In file included from ../../src/common/protobuf_utils.cpp:53:
../../src/master/master.hpp:2983:46: error: declaration shadows a field of
'mesos::internal::master::Role' [-Werror,-Wshadow]
auto allocatedTo = [](const std::string& role) {
^
../../src/master/master.hpp:2998:21: note: previous declaration is here
const std::string role;
^
{noformat}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)