Skip to content

compile fboss fail:fboss/agent/hw/bcm/BcmHostKey.cpp.o' failed #82

Open
@anonymouspeople

Description

i try to complie fboss,but i get fail, like this:
someone can help me ?

All-Series:/fboss$ git pull
Updating 7c538af..3ea43ee
Fast-forward
CMakeLists.txt | 19 +++++++++++------
fboss/agent/ApplyThriftConfig.cpp | 10 +++++++++
fboss/agent/SwSwitch.cpp | 22 ++++++++++++-------
fboss/agent/TunManager.cpp | 5 +++++
fboss/agent/TunManager.h | 7 +++++-
fboss/agent/hw/bcm/BcmHost.cpp | 2 +-
fboss/agent/hw/bcm/BcmHostKey.cpp | 2 +-
fboss/agent/hw/bcm/BcmHostKey.h | 10 ++++-----
fboss/agent/hw/bcm/BcmIntf.cpp | 14 +++++++++---
fboss/agent/hw/bcm/BcmIntf.h | 23 ++++++++++++++++----
fboss/agent/hw/bcm/BcmLabeledEgress.h | 8 +++++--
fboss/agent/hw/bcm/BcmLabeledTunnel.cpp | 91 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
fboss/agent/hw/bcm/BcmLabeledTunnel.h | 50 +++++++++++++++++++++++++++++++++++++++++++
fboss/agent/hw/bcm/BcmLabeledTunnelEgress.cpp | 34 +++++++++++++++++++++++++++++
fboss/agent/hw/bcm/BcmLabeledTunnelEgress.h | 37 ++++++++++++++++++++++++++++++++
fboss/agent/hw/bcm/BcmSwitch.cpp | 1 +
fboss/agent/hw/bcm/oss/BcmLabeledEgress.cpp | 21 ++++++++++++++++++
fboss/agent/hw/bcm/oss/BcmLabeledTunnel.cpp | 10 +++++++++
fboss/agent/hw/bcm/oss/BcmLabeledTunnelEgress.cpp | 16 ++++++++++++++
fboss/agent/hw/bcm/tests/BcmHostKeyTests.cpp | 8 +++----
fboss/agent/hw/sai/fake/FakeSaiSwitch.cpp | 14 ++++++++++++
fboss/agent/hw/sai/fake/FakeSaiSwitch.h | 8 +++++++
fboss/agent/hw/sai/switch/SaiFdbManager.cpp | 78 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
fboss/agent/hw/sai/switch/SaiFdbManager.h | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
fboss/agent/hw/sai/switch/SaiManagerTable.cpp | 23 ++++++++++++++++++++
fboss/agent/hw/sai/switch/SaiManagerTable.h | 10 +++++++++
fboss/agent/hw/sai/switch/SaiNeighborManager.cpp | 16 ++++++++++----
fboss/agent/hw/sai/switch/SaiNeighborManager.h | 6 +++++-
fboss/agent/if/mpls.thrift | 7 ++++++
fboss/agent/switch_config.thrift | 32 ++++++++++++++++++++++++++++
fboss/agent/test/MockTunManager.h | 1 +
fboss/agent/test/RoutingTest.cpp | 2 +-
fboss/agent/test/TestUtils.cpp | 107 ++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------
fboss/agent/test/TestUtils.h | 11 ++++++++--
fboss/agent/test/TunInterfaceTest.cpp | 37 ++++++++++++++++++++++++++++++++
35 files changed, 712 insertions(+), 96 deletions(-)
create mode 100644 fboss/agent/hw/bcm/BcmLabeledTunnel.cpp
create mode 100644 fboss/agent/hw/bcm/BcmLabeledTunnel.h
create mode 100644 fboss/agent/hw/bcm/BcmLabeledTunnelEgress.cpp
create mode 100644 fboss/agent/hw/bcm/BcmLabeledTunnelEgress.h
create mode 100644 fboss/agent/hw/bcm/oss/BcmLabeledEgress.cpp
create mode 100644 fboss/agent/hw/bcm/oss/BcmLabeledTunnel.cpp
create mode 100644 fboss/agent/hw/bcm/oss/BcmLabeledTunnelEgress.cpp
create mode 100644 fboss/agent/hw/sai/switch/SaiFdbManager.cpp
create mode 100644 fboss/agent/hw/sai/switch/SaiFdbManager.h
create mode 100644 fboss/agent/test/TunInterfaceTest.cpp
All-Series:
/fboss$
All-Series:/fboss$ cd build/
All-Series:
/fboss/build$ cmake ..
-- Found folly: /usr/local
-- Found fizz: /usr/local
-- Found wangle: /usr/local
-- Found FBThrift: /usr/local
-- Configuring done
CMake Warning (dev) at CMakeLists.txt:591 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "agent_test" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:591 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "agent_test" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:572 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "wedge_qsfp_util" links to target "yarpl::yarpl" but the target was
not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:572 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "wedge_qsfp_util" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:567 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "cp2112_util" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:567 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "cp2112_util" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:245 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "bcm_test" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:245 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "bcm_test" links to target "rsocket::ReactiveSocket" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:229 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "qsfp_service" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:229 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "qsfp_service" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:211 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "wedge_agent" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:211 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "wedge_agent" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "netlink_manager_service_cpp2" links to target "yarpl::yarpl" but
the target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:186 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "netlink_manager_service_cpp2" links to target
"rsocket::ReactiveSocket" but the target was not found. Perhaps a
find_package() call is missing for an IMPORTED target, or an ALIAS target
is missing?
Call Stack (most recent call first):
CMakeLists.txt:186 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "hardware_stats_cpp2" links to target "yarpl::yarpl" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:162 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "hardware_stats_cpp2" links to target "rsocket::ReactiveSocket" but
the target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:162 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "switch_config_cpp2" links to target "yarpl::yarpl" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:64 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "switch_config_cpp2" links to target "rsocket::ReactiveSocket" but
the target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:64 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "fboss_cpp2" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:117 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "fboss_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:117 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "ctrl_cpp2" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:125 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "ctrl_cpp2" links to target "rsocket::ReactiveSocket" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:125 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "qsfp_cpp2" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:173 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "qsfp_cpp2" links to target "rsocket::ReactiveSocket" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:173 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "platform_config_cpp2" links to target "yarpl::yarpl" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:81 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "platform_config_cpp2" links to target "rsocket::ReactiveSocket" but
the target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:81 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "bcmswitch_cpp2" links to target "yarpl::yarpl" but the target was
not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:158 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "bcmswitch_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:158 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "agent_config_cpp2" links to target "yarpl::yarpl" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:72 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "agent_config_cpp2" links to target "rsocket::ReactiveSocket" but
the target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:72 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "fb303_cpp2" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:48 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "fb303_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:48 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "transceiver_cpp2" links to target "yarpl::yarpl" but the target was
not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:107 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "transceiver_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:107 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "network_address_cpp2" links to target "yarpl::yarpl" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:54 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "network_address_cpp2" links to target "rsocket::ReactiveSocket" but
the target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:54 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:276 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "fboss_agent" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:276 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "fboss_agent" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "pcap_pubsub_cpp2" links to target "yarpl::yarpl" but the target was
not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:166 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "pcap_pubsub_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:166 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "switch_state_cpp2" links to target "yarpl::yarpl" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:90 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "switch_state_cpp2" links to target "rsocket::ReactiveSocket" but
the target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:90 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "optic_cpp2" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:111 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "optic_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:111 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "external_phy_cpp2" links to target "yarpl::yarpl" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:99 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "external_phy_cpp2" links to target "rsocket::ReactiveSocket" but
the target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:99 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "mpls_cpp2" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:58 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "mpls_cpp2" links to target "rsocket::ReactiveSocket" but the target
was not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:58 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "sflow_cpp2" links to target "yarpl::yarpl" but the target was not
found. Perhaps a find_package() call is missing for an IMPORTED target, or
an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:121 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "sflow_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:121 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:220 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "netlink_manager" links to target "yarpl::yarpl" but the target was
not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at CMakeLists.txt:220 (add_executable):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "netlink_manager" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "sim_ctrl_cpp2" links to target "yarpl::yarpl" but the target was
not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:139 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "sim_ctrl_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:139 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "bcm_config_cpp2" links to target "yarpl::yarpl" but the target was
not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:148 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "bcm_config_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:148 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "packettrace_cpp2" links to target "yarpl::yarpl" but the target was
not found. Perhaps a find_package() call is missing for an IMPORTED
target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:154 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning (dev) at ThriftCppLibrary.cmake:94 (add_library):
Policy CMP0028 is not set: Double colon in target name means ALIAS or
IMPORTED target. Run "cmake --help-policy CMP0028" for policy details.
Use the cmake_policy command to set the policy and suppress this warning.

Target "packettrace_cpp2" links to target "rsocket::ReactiveSocket" but the
target was not found. Perhaps a find_package() call is missing for an
IMPORTED target, or an ALIAS target is missing?
Call Stack (most recent call first):
CMakeLists.txt:154 (add_thrift_cpp2_library)
This warning is for project developers. Use -Wno-dev to suppress it.

CMake Warning at CMakeLists.txt:591 (add_executable):
Cannot generate a safe runtime search path for target agent_test because
files in some directories may conflict with libraries in implicit
directories:

runtime library [libz.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /usr/local/lib

Some of these libraries may not be found correctly.

CMake Warning at CMakeLists.txt:572 (add_executable):
Cannot generate a safe runtime search path for target wedge_qsfp_util
because files in some directories may conflict with libraries in implicit
directories:

runtime library [libz.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /usr/local/lib

Some of these libraries may not be found correctly.

CMake Warning at CMakeLists.txt:567 (add_executable):
Cannot generate a safe runtime search path for target cp2112_util because
files in some directories may conflict with libraries in implicit
directories:

runtime library [libz.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /usr/local/lib

Some of these libraries may not be found correctly.

CMake Warning at CMakeLists.txt:245 (add_executable):
Cannot generate a safe runtime search path for target bcm_test because
files in some directories may conflict with libraries in implicit
directories:

runtime library [libz.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /usr/local/lib

Some of these libraries may not be found correctly.

CMake Warning at CMakeLists.txt:229 (add_executable):
Cannot generate a safe runtime search path for target qsfp_service because
files in some directories may conflict with libraries in implicit
directories:

runtime library [libz.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /usr/local/lib

Some of these libraries may not be found correctly.

CMake Warning at CMakeLists.txt:211 (add_executable):
Cannot generate a safe runtime search path for target wedge_agent because
files in some directories may conflict with libraries in implicit
directories:

runtime library [libz.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /usr/local/lib

Some of these libraries may not be found correctly.

CMake Warning at CMakeLists.txt:220 (add_executable):
Cannot generate a safe runtime search path for target netlink_manager
because files in some directories may conflict with libraries in implicit
directories:

runtime library [libz.so.1] in /usr/lib/x86_64-linux-gnu may be hidden by files in:
  /usr/local/lib

Some of these libraries may not be found correctly.

-- Generating done
-- Build files have been written to: /home/wukuncan/fboss/build
All-Series:/fboss/build$ cd ..
All-Series:
/fboss$ cd build/
All-Series:~/fboss/build$ make
[ 0%] Built target gtest
[ 0%] Generating fboss/agent/if/gen-cpp2/mpls_constants.h, fboss/agent/if/gen-cpp2/mpls_constants.cpp, fboss/agent/if/gen-cpp2/mpls_types.h, fboss/agent/if/gen-cpp2/mpls_types.tcc, fboss/agent/if/gen-cpp2/mpls_types_custom_protocol.h, fboss/agent/if/gen-cpp2/mpls_data.h, fboss/agent/if/gen-cpp2/mpls_data.cpp, fboss/agent/if/gen-cpp2/mpls_types.cpp
Scanning dependencies of target mpls_cpp2
[ 0%] Building CXX object CMakeFiles/mpls_cpp2.dir/fboss/agent/if/gen-cpp2/mpls_data.cpp.o
[ 0%] Building CXX object CMakeFiles/mpls_cpp2.dir/fboss/agent/if/gen-cpp2/mpls_types.cpp.o
[ 0%] Linking CXX static library libmpls_cpp2.a
[ 0%] Built target mpls_cpp2
[ 1%] Built target fboss_cpp2
[ 3%] Built target fb303_cpp2
Scanning dependencies of target transceiver_cpp2
[ 3%] Linking CXX static library libtransceiver_cpp2.a
[ 4%] Built target transceiver_cpp2
[ 5%] Built target network_address_cpp2
[ 5%] Generating fboss/agent/if/gen-cpp2/optic_constants.h, fboss/agent/if/gen-cpp2/optic_constants.cpp, fboss/agent/if/gen-cpp2/optic_types.h, fboss/agent/if/gen-cpp2/optic_types.tcc, fboss/agent/if/gen-cpp2/optic_types_custom_protocol.h, fboss/agent/if/gen-cpp2/optic_data.h, fboss/agent/if/gen-cpp2/optic_data.cpp, fboss/agent/if/gen-cpp2/optic_types.cpp
Scanning dependencies of target optic_cpp2
[ 5%] Building CXX object CMakeFiles/optic_cpp2.dir/fboss/agent/if/gen-cpp2/optic_data.cpp.o
[ 6%] Building CXX object CMakeFiles/optic_cpp2.dir/fboss/agent/if/gen-cpp2/optic_types.cpp.o
[ 6%] Linking CXX static library liboptic_cpp2.a
[ 6%] Built target optic_cpp2
[ 6%] Generating fboss/agent/if/gen-cpp2/ctrl_constants.h, fboss/agent/if/gen-cpp2/ctrl_constants.cpp, fboss/agent/if/gen-cpp2/ctrl_types.h, fboss/agent/if/gen-cpp2/ctrl_types.tcc, fboss/agent/if/gen-cpp2/ctrl_types_custom_protocol.h, fboss/agent/if/gen-cpp2/FbossCtrl.h, fboss/agent/if/gen-cpp2/FbossCtrl.tcc, fboss/agent/if/gen-cpp2/FbossCtrlAsyncClient.h, fboss/agent/if/gen-cpp2/FbossCtrl_custom_protocol.h, fboss/agent/if/gen-cpp2/NeighborListenerClient.h, fboss/agent/if/gen-cpp2/NeighborListenerClient.tcc, fboss/agent/if/gen-cpp2/NeighborListenerClientAsyncClient.h, fboss/agent/if/gen-cpp2/NeighborListenerClient_custom_protocol.h, fboss/agent/if/gen-cpp2/ctrl_data.h, fboss/agent/if/gen-cpp2/ctrl_data.cpp, fboss/agent/if/gen-cpp2/ctrl_types.cpp, fboss/agent/if/gen-cpp2/FbossCtrl.cpp, fboss/agent/if/gen-cpp2/FbossCtrlAsyncClient.cpp, fboss/agent/if/gen-cpp2/FbossCtrl_processmap_binary.cpp, fboss/agent/if/gen-cpp2/FbossCtrl_processmap_compact.cpp, fboss/agent/if/gen-cpp2/NeighborListenerClient.cpp, fboss/agent/if/gen-cpp2/NeighborListenerClientAsyncClient.cpp, fboss/agent/if/gen-cpp2/NeighborListenerClient_processmap_binary.cpp, fboss/agent/if/gen-cpp2/NeighborListenerClient_processmap_compact.cpp
[WARNING:/home/wukuncan/fboss/common/fb303/if/fb303.thrift:19] Uncaptured doctext at on line 17.
Scanning dependencies of target ctrl_cpp2
[ 6%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/ctrl_data.cpp.o
[ 6%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/ctrl_types.cpp.o
[ 7%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/FbossCtrl.cpp.o
[ 7%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/FbossCtrlAsyncClient.cpp.o
[ 7%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/FbossCtrl_processmap_binary.cpp.o
[ 7%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/FbossCtrl_processmap_compact.cpp.o
[ 8%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/NeighborListenerClient.cpp.o
[ 8%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/NeighborListenerClientAsyncClient.cpp.o
[ 8%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/NeighborListenerClient_processmap_binary.cpp.o
[ 8%] Building CXX object CMakeFiles/ctrl_cpp2.dir/fboss/agent/if/gen-cpp2/NeighborListenerClient_processmap_compact.cpp.o
[ 9%] Linking CXX static library libctrl_cpp2.a
[ 9%] Built target ctrl_cpp2
[ 9%] Generating fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_constants.h, fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_constants.cpp, fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_types.h, fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_types.tcc, fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_types_custom_protocol.h, fboss/netlink_manager/if/gen-cpp2/NetlinkManagerService.h, fboss/netlink_manager/if/gen-cpp2/NetlinkManagerService.tcc, fboss/netlink_manager/if/gen-cpp2/NetlinkManagerServiceAsyncClient.h, fboss/netlink_manager/if/gen-cpp2/NetlinkManagerService_custom_protocol.h, fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_data.h, fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_data.cpp, fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_types.cpp, fboss/netlink_manager/if/gen-cpp2/NetlinkManagerService.cpp, fboss/netlink_manager/if/gen-cpp2/NetlinkManagerServiceAsyncClient.cpp, fboss/netlink_manager/if/gen-cpp2/NetlinkManagerService_processmap_binary.cpp, fboss/netlink_manager/if/gen-cpp2/NetlinkManagerService_processmap_compact.cpp
[WARNING:/home/wukuncan/fboss/common/fb303/if/fb303.thrift:19] Uncaptured doctext at on line 17.
Scanning dependencies of target netlink_manager_service_cpp2
[ 10%] Building CXX object CMakeFiles/netlink_manager_service_cpp2.dir/fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_data.cpp.o
[ 10%] Building CXX object CMakeFiles/netlink_manager_service_cpp2.dir/fboss/netlink_manager/if/gen-cpp2/netlink_manager_service_types.cpp.o
[ 10%] Building CXX object CMakeFiles/netlink_manager_service_cpp2.dir/fboss/netlink_manager/if/gen-cpp2/NetlinkManagerService.cpp.o
[ 10%] Building CXX object CMakeFiles/netlink_manager_service_cpp2.dir/fboss/netlink_manager/if/gen-cpp2/NetlinkManagerServiceAsyncClient.cpp.o
[ 11%] Building CXX object CMakeFiles/netlink_manager_service_cpp2.dir/fboss/netlink_manager/if/gen-cpp2/NetlinkManagerService_processmap_binary.cpp.o
[ 11%] Building CXX object CMakeFiles/netlink_manager_service_cpp2.dir/fboss/netlink_manager/if/gen-cpp2/NetlinkManagerService_processmap_compact.cpp.o
[ 11%] Linking CXX static library libnetlink_manager_service_cpp2.a
[ 11%] Built target netlink_manager_service_cpp2
[ 12%] Built target hardware_stats_cpp2
[ 13%] Generating fboss/agent/gen-cpp2/switch_config_constants.h, fboss/agent/gen-cpp2/switch_config_constants.cpp, fboss/agent/gen-cpp2/switch_config_types.h, fboss/agent/gen-cpp2/switch_config_types.tcc, fboss/agent/gen-cpp2/switch_config_types_custom_protocol.h, fboss/agent/gen-cpp2/switch_config_data.h, fboss/agent/gen-cpp2/switch_config_data.cpp, fboss/agent/gen-cpp2/switch_config_types.cpp
Scanning dependencies of target switch_config_cpp2
[ 13%] Building CXX object CMakeFiles/switch_config_cpp2.dir/fboss/agent/gen-cpp2/switch_config_data.cpp.o
[ 13%] Building CXX object CMakeFiles/switch_config_cpp2.dir/fboss/agent/gen-cpp2/switch_config_types.cpp.o
[ 13%] Linking CXX static library libswitch_config_cpp2.a
[ 13%] Built target switch_config_cpp2
[ 14%] Generating fboss/qsfp_service/if/gen-cpp2/qsfp_constants.h, fboss/qsfp_service/if/gen-cpp2/qsfp_constants.cpp, fboss/qsfp_service/if/gen-cpp2/qsfp_types.h, fboss/qsfp_service/if/gen-cpp2/qsfp_types.tcc, fboss/qsfp_service/if/gen-cpp2/qsfp_types_custom_protocol.h, fboss/qsfp_service/if/gen-cpp2/QsfpService.h, fboss/qsfp_service/if/gen-cpp2/QsfpService.tcc, fboss/qsfp_service/if/gen-cpp2/QsfpServiceAsyncClient.h, fboss/qsfp_service/if/gen-cpp2/QsfpService_custom_protocol.h, fboss/qsfp_service/if/gen-cpp2/qsfp_data.h, fboss/qsfp_service/if/gen-cpp2/qsfp_data.cpp, fboss/qsfp_service/if/gen-cpp2/qsfp_types.cpp, fboss/qsfp_service/if/gen-cpp2/QsfpService.cpp, fboss/qsfp_service/if/gen-cpp2/QsfpServiceAsyncClient.cpp, fboss/qsfp_service/if/gen-cpp2/QsfpService_processmap_binary.cpp, fboss/qsfp_service/if/gen-cpp2/QsfpService_processmap_compact.cpp
[WARNING:/home/wukuncan/fboss/common/fb303/if/fb303.thrift:19] Uncaptured doctext at on line 17.
Scanning dependencies of target qsfp_cpp2
[ 14%] Building CXX object CMakeFiles/qsfp_cpp2.dir/fboss/qsfp_service/if/gen-cpp2/qsfp_data.cpp.o
[ 14%] Building CXX object CMakeFiles/qsfp_cpp2.dir/fboss/qsfp_service/if/gen-cpp2/qsfp_types.cpp.o
[ 14%] Building CXX object CMakeFiles/qsfp_cpp2.dir/fboss/qsfp_service/if/gen-cpp2/QsfpService.cpp.o
[ 15%] Building CXX object CMakeFiles/qsfp_cpp2.dir/fboss/qsfp_service/if/gen-cpp2/QsfpServiceAsyncClient.cpp.o
[ 15%] Building CXX object CMakeFiles/qsfp_cpp2.dir/fboss/qsfp_service/if/gen-cpp2/QsfpService_processmap_binary.cpp.o
[ 15%] Building CXX object CMakeFiles/qsfp_cpp2.dir/fboss/qsfp_service/if/gen-cpp2/QsfpService_processmap_compact.cpp.o
[ 15%] Linking CXX static library libqsfp_cpp2.a
[ 15%] Built target qsfp_cpp2
[ 16%] Built target bcm_config_cpp2
[ 16%] Generating fboss/lib/phy/gen-cpp2/external_phy_constants.h, fboss/lib/phy/gen-cpp2/external_phy_constants.cpp, fboss/lib/phy/gen-cpp2/external_phy_types.h, fboss/lib/phy/gen-cpp2/external_phy_types.tcc, fboss/lib/phy/gen-cpp2/external_phy_types_custom_protocol.h, fboss/lib/phy/gen-cpp2/external_phy_data.h, fboss/lib/phy/gen-cpp2/external_phy_data.cpp, fboss/lib/phy/gen-cpp2/external_phy_types.cpp
Scanning dependencies of target external_phy_cpp2
[ 16%] Building CXX object CMakeFiles/external_phy_cpp2.dir/fboss/lib/phy/gen-cpp2/external_phy_data.cpp.o
[ 16%] Building CXX object CMakeFiles/external_phy_cpp2.dir/fboss/lib/phy/gen-cpp2/external_phy_types.cpp.o
[ 16%] Linking CXX static library libexternal_phy_cpp2.a
[ 16%] Built target external_phy_cpp2
[ 16%] Generating fboss/agent/gen-cpp2/platform_config_constants.h, fboss/agent/gen-cpp2/platform_config_constants.cpp, fboss/agent/gen-cpp2/platform_config_types.h, fboss/agent/gen-cpp2/platform_config_types.tcc, fboss/agent/gen-cpp2/platform_config_types_custom_protocol.h, fboss/agent/gen-cpp2/platform_config_data.h, fboss/agent/gen-cpp2/platform_config_data.cpp, fboss/agent/gen-cpp2/platform_config_types.cpp
Scanning dependencies of target platform_config_cpp2
[ 16%] Building CXX object CMakeFiles/platform_config_cpp2.dir/fboss/agent/gen-cpp2/platform_config_data.cpp.o
[ 16%] Building CXX object CMakeFiles/platform_config_cpp2.dir/fboss/agent/gen-cpp2/platform_config_types.cpp.o
[ 16%] Linking CXX static library libplatform_config_cpp2.a
[ 16%] Built target platform_config_cpp2
[ 17%] Built target bcmswitch_cpp2
[ 17%] Generating fboss/agent/gen-cpp2/agent_config_constants.h, fboss/agent/gen-cpp2/agent_config_constants.cpp, fboss/agent/gen-cpp2/agent_config_types.h, fboss/agent/gen-cpp2/agent_config_types.tcc, fboss/agent/gen-cpp2/agent_config_types_custom_protocol.h, fboss/agent/gen-cpp2/agent_config_data.h, fboss/agent/gen-cpp2/agent_config_data.cpp, fboss/agent/gen-cpp2/agent_config_types.cpp
Scanning dependencies of target agent_config_cpp2
[ 17%] Building CXX object CMakeFiles/agent_config_cpp2.dir/fboss/agent/gen-cpp2/agent_config_data.cpp.o
[ 17%] Building CXX object CMakeFiles/agent_config_cpp2.dir/fboss/agent/gen-cpp2/agent_config_types.cpp.o
[ 17%] Linking CXX static library libagent_config_cpp2.a
[ 17%] Built target agent_config_cpp2
[ 18%] Built target packettrace_cpp2
[ 21%] Built target pcap_pubsub_cpp2
[ 22%] Generating fboss/agent/gen-cpp2/switch_state_constants.h, fboss/agent/gen-cpp2/switch_state_constants.cpp, fboss/agent/gen-cpp2/switch_state_types.h, fboss/agent/gen-cpp2/switch_state_types.tcc, fboss/agent/gen-cpp2/switch_state_types_custom_protocol.h, fboss/agent/gen-cpp2/switch_state_data.h, fboss/agent/gen-cpp2/switch_state_data.cpp, fboss/agent/gen-cpp2/switch_state_types.cpp
Scanning dependencies of target switch_state_cpp2
[ 22%] Building CXX object CMakeFiles/switch_state_cpp2.dir/fboss/agent/gen-cpp2/switch_state_data.cpp.o
[ 22%] Building CXX object CMakeFiles/switch_state_cpp2.dir/fboss/agent/gen-cpp2/switch_state_types.cpp.o
[ 22%] Linking CXX static library libswitch_state_cpp2.a
[ 22%] Built target switch_state_cpp2
[ 23%] Built target sflow_cpp2
[ 23%] Generating fboss/agent/hw/sim/gen-cpp2/sim_ctrl_constants.h, fboss/agent/hw/sim/gen-cpp2/sim_ctrl_constants.cpp, fboss/agent/hw/sim/gen-cpp2/sim_ctrl_types.h, fboss/agent/hw/sim/gen-cpp2/sim_ctrl_types.tcc, fboss/agent/hw/sim/gen-cpp2/sim_ctrl_types_custom_protocol.h, fboss/agent/hw/sim/gen-cpp2/SimCtrl.h, fboss/agent/hw/sim/gen-cpp2/SimCtrl.tcc, fboss/agent/hw/sim/gen-cpp2/SimCtrlAsyncClient.h, fboss/agent/hw/sim/gen-cpp2/SimCtrl_custom_protocol.h, fboss/agent/hw/sim/gen-cpp2/sim_ctrl_data.h, fboss/agent/hw/sim/gen-cpp2/sim_ctrl_data.cpp, fboss/agent/hw/sim/gen-cpp2/sim_ctrl_types.cpp, fboss/agent/hw/sim/gen-cpp2/SimCtrl.cpp, fboss/agent/hw/sim/gen-cpp2/SimCtrlAsyncClient.cpp, fboss/agent/hw/sim/gen-cpp2/SimCtrl_processmap_binary.cpp, fboss/agent/hw/sim/gen-cpp2/SimCtrl_processmap_compact.cpp
[WARNING:/home/wukuncan/fboss/common/fb303/if/fb303.thrift:19] Uncaptured doctext at on line 17.
Scanning dependencies of target sim_ctrl_cpp2
[ 23%] Building CXX object CMakeFiles/sim_ctrl_cpp2.dir/fboss/agent/hw/sim/gen-cpp2/sim_ctrl_data.cpp.o
[ 23%] Building CXX object CMakeFiles/sim_ctrl_cpp2.dir/fboss/agent/hw/sim/gen-cpp2/sim_ctrl_types.cpp.o
[ 23%] Building CXX object CMakeFiles/sim_ctrl_cpp2.dir/fboss/agent/hw/sim/gen-cpp2/SimCtrl.cpp.o
[ 24%] Building CXX object CMakeFiles/sim_ctrl_cpp2.dir/fboss/agent/hw/sim/gen-cpp2/SimCtrlAsyncClient.cpp.o
[ 24%] Building CXX object CMakeFiles/sim_ctrl_cpp2.dir/fboss/agent/hw/sim/gen-cpp2/SimCtrl_processmap_binary.cpp.o
[ 24%] Building CXX object CMakeFiles/sim_ctrl_cpp2.dir/fboss/agent/hw/sim/gen-cpp2/SimCtrl_processmap_compact.cpp.o
[ 24%] Linking CXX static library libsim_ctrl_cpp2.a
[ 24%] Built target sim_ctrl_cpp2
Scanning dependencies of target fboss_agent
[ 24%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/AgentConfig.cpp.o
[ 24%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/AlpmUtils.cpp.o
[ 24%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/ApplyThriftConfig.cpp.o
[ 25%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/ArpCache.cpp.o
[ 25%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/ArpHandler.cpp.o
[ 25%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/capture/PcapFile.cpp.o
[ 25%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/capture/PcapPkt.cpp.o
[ 25%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/capture/PcapQueue.cpp.o
[ 26%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/capture/PcapWriter.cpp.o
[ 26%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/capture/PktCapture.cpp.o
[ 26%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/capture/PktCaptureManager.cpp.o
[ 26%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/DHCPv4Handler.cpp.o
[ 27%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/DHCPv6Handler.cpp.o
[ 27%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmAclTable.cpp.o
[ 27%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmAPI.cpp.o
[ 28%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmConfig.cpp.o
[ 28%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmControlPlaneQueueManager.cpp.o
[ 28%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmCosQueueManager.cpp.o
[ 28%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmEgress.cpp.o
[ 28%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmHost.cpp.o
[ 29%] Building CXX object CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmHostKey.cpp.o
In file included from /usr/local/include/folly/Expected.h:34:0,
from /usr/local/include/folly/dynamic.h:65,
from /home/wukuncan/fboss/fboss/agent/state/RouteNextHop.h:12,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:16,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:10:
/usr/local/include/folly/Optional.h: In instantiation of ‘constexpr bool folly::operator!=(const folly::Optional&, const folly::Optional&) [with U = facebook::fboss::InterfaceID; V = facebook::fboss::InterfaceID]’:
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:50:37: required from here
/usr/local/include/folly/Optional.h:508:14: error: ambiguous overload for ‘operator==’ (operand types are ‘const folly::Optionalfacebook::fboss::InterfaceID’ and ‘const folly::Optionalfacebook::fboss::InterfaceID’)
return !(a == b);
~~~^~~~~
/usr/local/include/folly/Optional.h:496:16: note: candidate: constexpr bool folly::operator==(const folly::Optional&, const folly::Optional&) [with U = facebook::fboss::InterfaceID; V = facebook::fboss::InterfaceID]
constexpr bool operator==(const Optional& a, const Optional& b) {
^~~~~~~~
/usr/local/include/folly/Optional.h:486:16: note: candidate: constexpr bool folly::operator==(const U&, const folly::Optional&) [with U = folly::Optionalfacebook::fboss::InterfaceID; V = facebook::fboss::InterfaceID]
constexpr bool operator==(const U& a, const Optional& b) {
^~~~~~~~
/usr/local/include/folly/Optional.h:476:16: note: candidate: constexpr bool folly::operator==(const folly::Optional&, const V&) [with U = facebook::fboss::InterfaceID; V = folly::Optionalfacebook::fboss::InterfaceID]
constexpr bool operator==(const Optional& a, const V& b) {
^~~~~~~~
In file included from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:10:0:
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:59:17: note: candidate: bool facebook::fboss::operator==(const SelfType&, const SelfType&) [with SelfType = folly::Optionalfacebook::fboss::InterfaceID; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]
friend bool operator==(SelfType const& lhs, SelfType const& rhs);
^~~~~~~~
In file included from /usr/local/include/folly/Poly.h:51:0,
from /home/wukuncan/fboss/fboss/agent/state/RouteNextHop.h:14,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:16,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:10:
/usr/local/include/folly/detail/PolyDetail.h: In instantiation of ‘decltype(auto) folly::detail::PolyNode<I, Tail>::polyCall(As&& ...) const [with long unsigned int K = 7; As = {const folly::detail::PolyValfacebook::fboss::IHostKey&}; I = facebook::fboss::IHostKey; Tail = folly::detail::PolyRootfacebook::fboss::IHostKey]’:
/usr/local/include/folly/detail/PolyDetail.h:720:15: required by substitution of ‘template<long unsigned int N, class This, class ... As> static decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) folly::detail::PolyAccess::call(This&&, As&& ...) [with long unsigned int N = 7; This = const folly::detail::PolyValfacebook::fboss::IHostKey&; As = {const folly::detail::PolyValfacebook::fboss::IHostKey&}]’
/usr/local/include/folly/Poly.h:237:44: required by substitution of ‘template<long unsigned int N, class This, class ... As> decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) folly::poly_call(This&&, As&& ...) [with long unsigned int N = 7; This = const folly::detail::PolyValfacebook::fboss::IHostKey&; As = {const folly::detail::PolyValfacebook::fboss::IHostKey&}]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:88:29: required from ‘bool facebook::fboss::operator==(const SelfType&, const SelfType&) [with SelfType = folly::detail::PolyValfacebook::fboss::IHostKey; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:64:16: required from ‘static bool facebook::fboss::IHostKey::eq(const T&, const T&) [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface
(int) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; I = facebook::fboss::IHostKey; U = folly::detail::PolyValfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyValfacebook::fboss::IHostKey&, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal(T&&) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:62:24: required from here
/usr/local/include/folly/detail/PolyDetail.h:799:62: error: could not convert ‘as#0’ from ‘const folly::detail::PolyValfacebook::fboss::IHostKey’ to ‘folly::Poly<const facebook::fboss::IHostKey&>’
return std::get(select(PolyAccess::vtable(this)))(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
PolyAccess::data(this), static_cast<As&&>(as)...);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp: In instantiation of ‘bool facebook::fboss::operator==(const SelfType&, const SelfType&) [with SelfType = folly::detail::PolyValfacebook::fboss::IHostKey; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’:
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:64:16: required from ‘static bool facebook::fboss::IHostKey::eq(const T&, const T&) [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface_(int) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; I = facebook::fboss::IHostKey; U = folly::detail::PolyValfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyValfacebook::fboss::IHostKey&, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal(T&&) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:62:24: required from here
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:88:38: error: void value not ignored as it ought to be
return folly::poly_call<7>(lhs, rhs);
^
In file included from /usr/local/include/folly/Poly.h:51:0,
from /home/wukuncan/fboss/fboss/agent/state/RouteNextHop.h:14,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:16,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:10:
/usr/local/include/folly/detail/PolyDetail.h: In instantiation of ‘decltype(auto) folly::detail::PolyNode<I, Tail>::polyCall(As&& ...) const [with long unsigned int K = 6; As = {const folly::detail::PolyValfacebook::fboss::IHostKey&}; I = facebook::fboss::IHostKey; Tail = folly::detail::PolyRootfacebook::fboss::IHostKey]’:
/usr/local/include/folly/detail/PolyDetail.h:720:15: required by substitution of ‘template<long unsigned int N, class This, class ... As> static decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) folly::detail::PolyAccess::call(This&&, As&& ...) [with long unsigned int N = 6; This = const folly::detail::PolyValfacebook::fboss::IHostKey&; As = {const folly::detail::PolyValfacebook::fboss::IHostKey&}]’
/usr/local/include/folly/Poly.h:237:44: required by substitution of ‘template<long unsigned int N, class This, class ... As> decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) folly::poly_call(This&&, As&& ...) [with long unsigned int N = 6; This = const folly::detail::PolyValfacebook::fboss::IHostKey&; As = {const folly::detail::PolyValfacebook::fboss::IHostKey&}]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:83:29: required from ‘bool facebook::fboss::operator<(const SelfType&, const SelfType&) [with SelfType = folly::detail::PolyValfacebook::fboss::IHostKey; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:69:16: required from ‘static bool facebook::fboss::IHostKey::lt(const T&, const T&) [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface
(int) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; I = facebook::fboss::IHostKey; U = folly::detail::PolyValfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyValfacebook::fboss::IHostKey&, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal(T&&) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:62:24: required from here
/usr/local/include/folly/detail/PolyDetail.h:799:62: error: could not convert ‘as#0’ from ‘const folly::detail::PolyValfacebook::fboss::IHostKey’ to ‘folly::Poly<const facebook::fboss::IHostKey&>’
return std::get(select(PolyAccess::vtable(this)))(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
PolyAccess::data(this), static_cast<As&&>(as)...);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp: In instantiation of ‘bool facebook::fboss::operator<(const SelfType&, const SelfType&) [with SelfType = folly::detail::PolyValfacebook::fboss::IHostKey; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’:
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:69:16: required from ‘static bool facebook::fboss::IHostKey::lt(const T&, const T&) [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface_(int) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; I = facebook::fboss::IHostKey; U = folly::detail::PolyValfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyValfacebook::fboss::IHostKey&, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal(T&&) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:62:24: required from here
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:83:38: error: void value not ignored as it ought to be
return folly::poly_call<6>(lhs, rhs);
^
In file included from /usr/local/include/folly/Poly.h:51:0,
from /home/wukuncan/fboss/fboss/agent/state/RouteNextHop.h:14,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:16,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:10:
/usr/local/include/folly/detail/PolyDetail.h: In instantiation of ‘decltype(auto) folly::detail::PolyNode<I, Tail>::polyCall(As&& ...) const [with long unsigned int K = 7; As = {const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&}; I = facebook::fboss::IHostKey; Tail = folly::detail::PolyRoot<const facebook::fboss::IHostKey&>]’:
/usr/local/include/folly/detail/PolyDetail.h:720:15: required by substitution of ‘template<long unsigned int N, class This, class ... As> static decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) folly::detail::PolyAccess::call(This&&, As&& ...) [with long unsigned int N = 7; This = const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&; As = {const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&}]’
/usr/local/include/folly/Poly.h:237:44: required by substitution of ‘template<long unsigned int N, class This, class ... As> decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) folly::poly_call(This&&, As&& ...) [with long unsigned int N = 7; This = const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&; As = {const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&}]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:88:29: required from ‘bool facebook::fboss::operator==(const SelfType&, const SelfType&) [with SelfType = folly::detail::PolyRef<const facebook::fboss::IHostKey&>; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:64:16: required from ‘static bool facebook::fboss::IHostKey::eq(const T&, const T&) [with T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface
(int) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; I = facebook::fboss::IHostKey; U = folly::detail::PolyValfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyValfacebook::fboss::IHostKey&, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal(T&&) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:62:24: required from here
/usr/local/include/folly/detail/PolyDetail.h:799:62: error: could not convert ‘as#0’ from ‘const folly::detail::PolyRef<const facebook::fboss::IHostKey&>’ to ‘folly::Poly<const facebook::fboss::IHostKey&>’
return std::get(select(PolyAccess::vtable(this)))(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
PolyAccess::data(this), static_cast<As&&>(as)...);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp: In instantiation of ‘bool facebook::fboss::operator==(const SelfType&, const SelfType&) [with SelfType = folly::detail::PolyRef<const facebook::fboss::IHostKey&>; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’:
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:64:16: required from ‘static bool facebook::fboss::IHostKey::eq(const T&, const T&) [with T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decay<const facebook::fboss::IHostKey&>::type; T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface_(int) [with T = const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&; I = const facebook::fboss::IHostKey&; U = folly::detail::PolyRef<const facebook::fboss::IHostKey&>; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = ]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&, const facebook::fboss::IHostKey&>’
/usr/local/include/folly/Poly.h:595:76: [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface_(int) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; I = facebook::fboss::IHostKey; U = folly::detail::PolyValfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyValfacebook::fboss::IHostKey&, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal(T&&) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:62:24: required from here
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:88:38: error: void value not ignored as it ought to be
return folly::poly_call<7>(lhs, rhs);
^
In file included from /usr/local/include/folly/Poly.h:51:0,
from /home/wukuncan/fboss/fboss/agent/state/RouteNextHop.h:14,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:16,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:10:
/usr/local/include/folly/detail/PolyDetail.h: In instantiation of ‘decltype(auto) folly::detail::PolyNode<I, Tail>::polyCall(As&& ...) const [with long unsigned int K = 6; As = {const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&}; I = facebook::fboss::IHostKey; Tail = folly::detail::PolyRoot<const facebook::fboss::IHostKey&>]’:
/usr/local/include/folly/detail/PolyDetail.h:720:15: required by substitution of ‘template<long unsigned int N, class This, class ... As> static decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) folly::detail::PolyAccess::call(This&&, As&& ...) [with long unsigned int N = 6; This = const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&; As = {const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&}]’
/usr/local/include/folly/Poly.h:237:44: required by substitution of ‘template<long unsigned int N, class This, class ... As> decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) folly::poly_call(This&&, As&& ...) [with long unsigned int N = 6; This = const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&; As = {const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&}]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:83:29: required from ‘bool facebook::fboss::operator<(const SelfType&, const SelfType&) [with SelfType = folly::detail::PolyRef<const facebook::fboss::IHostKey&>; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:69:16: required from ‘static bool facebook::fboss::IHostKey::lt(const T&, const T&) [with T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: [ skipping 9 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface
(int) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; I = facebook::fboss::IHostKey; U = folly::detail::PolyValfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyValfacebook::fboss::IHostKey&, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal(T&&) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:62:24: required from here
/usr/local/include/folly/detail/PolyDetail.h:799:62: error: could not convert ‘as#0’ from ‘const folly::detail::PolyRef<const facebook::fboss::IHostKey&>’ to ‘folly::Poly<const facebook::fboss::IHostKey&>’
return std::get(select(PolyAccess::vtable(this)))(
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
PolyAccess::data(this), static_cast<As&&>(as)...);
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp: In instantiation of ‘bool facebook::fboss::operator<(const SelfType&, const SelfType&) [with SelfType = folly::detail::PolyRef<const facebook::fboss::IHostKey&>; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’:
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:69:16: required from ‘static bool facebook::fboss::IHostKey::lt(const T&, const T&) [with T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decay<const facebook::fboss::IHostKey&>::type; T = folly::detail::PolyRef<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface_(int) [with T = const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&; I = const facebook::fboss::IHostKey&; U = folly::detail::PolyRef<const facebook::fboss::IHostKey&>; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = ]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyRef<const facebook::fboss::IHostKey&>&, const facebook::fboss::IHostKey&>’
/usr/local/include/folly/Poly.h:595:76: [ skipping 6 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::detail::PolyValfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface_(int) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; I = facebook::fboss::IHostKey; U = folly::detail::PolyValfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef_::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::
)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::detail::PolyValfacebook::fboss::IHostKey&, const folly::detail::PolyValfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::detail::PolyValfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<const folly::detail::PolyValfacebook::fboss::IHostKey&, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal(T&&) [with T = const folly::detail::PolyValfacebook::fboss::IHostKey&; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:62:24: required from here
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:83:38: error: void value not ignored as it ought to be
return folly::poly_call<6>(lhs, rhs);
^
In file included from /usr/local/include/folly/Poly.h:51:0,
from /home/wukuncan/fboss/fboss/agent/state/RouteNextHop.h:14,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:16,
from /home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:10:
/usr/local/include/folly/detail/PolyDetail.h: In instantiation of ‘static decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) folly::detail::PolyAccess::call(This&&, As&& ...) [with long unsigned int N = 7; This = const folly::Polyfacebook::fboss::IHostKey&; As = {const folly::Polyfacebook::fboss::IHostKey&}; decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) = bool]’:
/usr/local/include/folly/Poly.h:240:37: required from ‘decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) folly::poly_call(This&&, As&& ...) [with long unsigned int N = 7; This = const folly::Polyfacebook::fboss::IHostKey&; As = {const folly::Polyfacebook::fboss::IHostKey&}; decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) = bool]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:88:29: required from ‘bool facebook::fboss::operator==(const SelfType&, const SelfType&) [with SelfType = folly::Polyfacebook::fboss::IHostKey; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:64:16: required from ‘static bool facebook::fboss::IHostKey::eq(const T&, const T&) [with T = folly::Polyfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::Polyfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::Polyfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface
(int) [with T = folly::Polyfacebook::fboss::IHostKey; I = facebook::fboss::IHostKey; U = folly::Polyfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::Polyfacebook::fboss::IHostKey&, const folly::Polyfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::Polyfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::Polyfacebook::fboss::IHostKey&, const folly::Polyfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::Polyfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<folly::Polyfacebook::fboss::IHostKey, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal<T, >(T&&) [with T = folly::Polyfacebook::fboss::IHostKey; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:98:35: required from here
/usr/local/include/folly/detail/PolyDetail.h:723:5: error: static assertion failed: When passing a Poly<> object to call(), you must explicitly say which Interface to dispatch to, as in call<0, MyInterface>(self, args...)
static_assert(
^~~~~~~~~~~~~
/usr/local/include/folly/detail/PolyDetail.h: In instantiation of ‘static decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) folly::detail::PolyAccess::call(This&&, As&& ...) [with long unsigned int N = 6; This = const folly::Polyfacebook::fboss::IHostKey&; As = {const folly::Polyfacebook::fboss::IHostKey&}; decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) = bool]’:
/usr/local/include/folly/Poly.h:240:37: required from ‘decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) folly::poly_call(This&&, As&& ...) [with long unsigned int N = 6; This = const folly::Polyfacebook::fboss::IHostKey&; As = {const folly::Polyfacebook::fboss::IHostKey&}; decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) = bool]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:83:29: required from ‘bool facebook::fboss::operator<(const SelfType&, const SelfType&) [with SelfType = folly::Polyfacebook::fboss::IHostKey; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:69:16: required from ‘static bool facebook::fboss::IHostKey::lt(const T&, const T&) [with T = folly::Polyfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::Polyfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::Polyfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface
(int) [with T = folly::Polyfacebook::fboss::IHostKey; I = facebook::fboss::IHostKey; U = folly::Polyfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::Polyfacebook::fboss::IHostKey&, const folly::Polyfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::Polyfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::Polyfacebook::fboss::IHostKey&, const folly::Polyfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::Polyfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<folly::Polyfacebook::fboss::IHostKey, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal<T, >(T&&) [with T = folly::Polyfacebook::fboss::IHostKey; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:98:35: required from here
/usr/local/include/folly/detail/PolyDetail.h:723:5: error: static assertion failed: When passing a Poly<> object to call(), you must explicitly say which Interface to dispatch to, as in call<0, MyInterface>(self, args...)
/usr/local/include/folly/detail/PolyDetail.h: In instantiation of ‘static decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) folly::detail::PolyAccess::call(This&&, As&& ...) [with long unsigned int N = 7; This = const folly::Poly<const facebook::fboss::IHostKey&>&; As = {const folly::Poly<const facebook::fboss::IHostKey&>&}; decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) = bool]’:
/usr/local/include/folly/Poly.h:240:37: required from ‘decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) folly::poly_call(This&&, As&& ...) [with long unsigned int N = 7; This = const folly::Poly<const facebook::fboss::IHostKey&>&; As = {const folly::Poly<const facebook::fboss::IHostKey&>&}; decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) = bool]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:88:29: required from ‘bool facebook::fboss::operator==(const SelfType&, const SelfType&) [with SelfType = folly::Poly<const facebook::fboss::IHostKey&>; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:64:16: required from ‘static bool facebook::fboss::IHostKey::eq(const T&, const T&) [with T = folly::Poly<const facebook::fboss::IHostKey&>]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::Poly<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decay<const facebook::fboss::IHostKey&>::type; T = folly::Poly<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::Polyfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::Polyfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface
(int) [with T = folly::Polyfacebook::fboss::IHostKey; I = facebook::fboss::IHostKey; U = folly::Polyfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::Polyfacebook::fboss::IHostKey&, const folly::Polyfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::Polyfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::Polyfacebook::fboss::IHostKey&, const folly::Polyfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::Polyfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<folly::Polyfacebook::fboss::IHostKey, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal<T, >(T&&) [with T = folly::Polyfacebook::fboss::IHostKey; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:98:35: required from here
/usr/local/include/folly/detail/PolyDetail.h:723:5: error: static assertion failed: When passing a Poly<> object to call(), you must explicitly say which Interface to dispatch to, as in call<0, MyInterface>(self, args...)
/usr/local/include/folly/detail/PolyDetail.h: In instantiation of ‘static decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) folly::detail::PolyAccess::call(This&&, As&& ...) [with long unsigned int N = 6; This = const folly::Poly<const facebook::fboss::IHostKey&>&; As = {const folly::Poly<const facebook::fboss::IHostKey&>&}; decltype (static_cast<This&&>(this).polyCall(static_cast<As&>(folly::detail::PolyAccess::call::args) ...)) = bool]’:
/usr/local/include/folly/Poly.h:240:37: required from ‘decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) folly::poly_call(This&&, As&& ...) [with long unsigned int N = 6; This = const folly::Poly<const facebook::fboss::IHostKey&>&; As = {const folly::Poly<const facebook::fboss::IHostKey&>&}; decltype (folly::detail::PolyAccess:: call(static_cast<This&&>(this), static_cast<As&>(folly::poly_call::as) ...)) = bool]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:83:29: required from ‘bool facebook::fboss::operator<(const SelfType&, const SelfType&) [with SelfType = folly::Poly<const facebook::fboss::IHostKey&>; Base = folly::detail::ArchetypeRootfacebook::fboss::IHostKey]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:69:16: required from ‘static bool facebook::fboss::IHostKey::lt(const T&, const T&) [with T = folly::Poly<const facebook::fboss::IHostKey&>]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::Poly<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decay<const facebook::fboss::IHostKey&>::type; T = folly::Poly<const facebook::fboss::IHostKey&>]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: [ skipping 8 instantiation contexts, use -ftemplate-backtrace-limit=0 to disable ]
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.h:83:28: required by substitution of ‘template using Members = typename decltype (folly::detail::deduceMembers((& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)))::Members<(& T:: getVrf), (& T:: addr), (& T:: intfID), (& T:: hasLabel), (& T:: getLabel), (& T:: str), (& eq), (& lt), (& T:: needsMplsTunnel), (& T:: tunnelLabelStack)> [with T = folly::Polyfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:229:66: required by substitution of ‘template<class I, class T> using MembersOf = typename I::Members<folly::remove_cvref_t > [with I = std::decayfacebook::fboss::IHostKey::type; T = folly::Polyfacebook::fboss::IHostKey]’
/usr/local/include/folly/detail/PolyDetail.h:904:5: required by substitution of ‘template<class T, class I, class U, typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type , typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type , class> std::true_type folly::detail::modelsInterface
(int) [with T = folly::Polyfacebook::fboss::IHostKey; I = facebook::fboss::IHostKey; U = folly::Polyfacebook::fboss::IHostKey; typename std::enable_if<folly::Negation<std::is_base_of<folly::detail::PolyBase, U> >::value, int>::type = ; typename std::enable_if<std::is_constructible<typename folly::detail::XRef
::type::apply, T>::value, int>::type = ; = folly::detail::TypeList<std::integral_constant<int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getVrf>, std::integral_constant<folly::IPAddress (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::addr>, std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::intfID>, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::hasLabel>, std::integral_constant<unsigned int (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::getLabel>, std::integral_constant<std::__cxx11::basic_string<char, std::char_traits, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::str>, std::integral_constant<bool ()(const folly::Polyfacebook::fboss::IHostKey&, const folly::Polyfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::eq<folly::Polyfacebook::fboss::IHostKey > >, std::integral_constant<bool ()(const folly::Polyfacebook::fboss::IHostKey&, const folly::Polyfacebook::fboss::IHostKey&), facebook::fboss::IHostKey::lt<folly::Polyfacebook::fboss::IHostKey > >, std::integral_constant<bool (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::needsMplsTunnel>, std::integral_constant<std::vector<int, std::allocator > (facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::)() const, &facebook::fboss::IHostKey::Interface<folly::detail::PolyNode<facebook::fboss::IHostKey, folly::detail::PolyRootfacebook::fboss::IHostKey > >::tunnelLabelStack> >]’
/usr/local/include/folly/detail/PolyDetail.h:910:57: required from ‘struct folly::detail::ModelsInterface<folly::Polyfacebook::fboss::IHostKey, facebook::fboss::IHostKey>’
/usr/local/include/folly/Poly.h:521:76: required by substitution of ‘template<class T, typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type > folly::detail::PolyValfacebook::fboss::IHostKey::PolyVal<T, >(T&&) [with T = folly::Polyfacebook::fboss::IHostKey; typename std::enable_if<folly::detail::ModelsInterface<T, facebook::fboss::IHostKey>::value, int>::type = ]’
/home/wukuncan/fboss/fboss/agent/hw/bcm/BcmHostKey.cpp:98:35: required from here
/usr/local/include/folly/detail/PolyDetail.h:723:5: error: static assertion failed: When passing a Poly<> object to call(), you must explicitly say which Interface to dispatch to, as in call<0, MyInterface>(self, args...)
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = int; D = const folly::detail::Data; As = {}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<int (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::getVrf>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
static R call(D& d, As... as) {
^~~~
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = folly::IPAddress; D = const folly::detail::Data; As = {}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<folly::IPAddress (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::addr>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = folly::Optionalfacebook::fboss::InterfaceID; D = const folly::detail::Data; As = {}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::intfID>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<bool (facebook::fboss::BcmHostKey::)() const, &facebook::fboss::BcmHostKey::hasLabel>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = unsigned int; D = const folly::detail::Data; As = {}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<unsigned int (facebook::fboss::BcmHostKey::
)() const, &facebook::fboss::BcmHostKey::getLabel>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = std::__cxx11::basic_string; D = const folly::detail::Data; As = {}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<std::__cxx11::basic_string (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::str>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::
::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {folly::Poly<const facebook::fboss::IHostKey&>}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<bool ()(const facebook::fboss::BcmHostKey&, const facebook::fboss::BcmHostKey&), facebook::fboss::IHostKey::eqfacebook::fboss::BcmHostKey >; I = facebook::fboss::IHostKey; Args = {const facebook::fboss::BcmHostKey&}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {folly::Poly<const facebook::fboss::IHostKey&>}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<bool (
)(const facebook::fboss::BcmHostKey&, const facebook::fboss::BcmHostKey&), facebook::fboss::IHostKey::ltfacebook::fboss::BcmHostKey >; I = facebook::fboss::IHostKey; Args = {const facebook::fboss::BcmHostKey&}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<bool (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::needsMplsTunnel>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::
::call(D&, As ...) [with R = std::vector; D = const folly::detail::Data; As = {}; T = const facebook::fboss::BcmHostKey&; User = std::integral_constant<std::vector (facebook::fboss::BcmHostKey::)() const, &facebook::fboss::BcmHostKey::tunnelLabelStack>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = int; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<int (facebook::fboss::BcmHostKey::
)() const, &facebook::fboss::BcmHostKey::getVrf>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = folly::IPAddress; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<folly::IPAddress (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::addr>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::
::call(D&, As ...) [with R = folly::Optionalfacebook::fboss::InterfaceID; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::BcmHostKey::)() const, &facebook::fboss::BcmHostKey::intfID>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<bool (facebook::fboss::BcmHostKey::
)() const, &facebook::fboss::BcmHostKey::hasLabel>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = unsigned int; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<unsigned int (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::getLabel>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::
::call(D&, As ...) [with R = std::__cxx11::basic_string; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<std::__cxx11::basic_string (facebook::fboss::BcmHostKey::)() const, &facebook::fboss::BcmHostKey::str>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {folly::Poly<const facebook::fboss::IHostKey&>}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<bool (
)(const facebook::fboss::BcmHostKey&, const facebook::fboss::BcmHostKey&), facebook::fboss::IHostKey::eqfacebook::fboss::BcmHostKey >; I = facebook::fboss::IHostKey; Args = {const facebook::fboss::BcmHostKey&}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {folly::Poly<const facebook::fboss::IHostKey&>}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<bool (*)(const facebook::fboss::BcmHostKey&, const facebook::fboss::BcmHostKey&), facebook::fboss::IHostKey::ltfacebook::fboss::BcmHostKey >; I = facebook::fboss::IHostKey; Args = {const facebook::fboss::BcmHostKey&}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::
::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<bool (facebook::fboss::BcmHostKey::)() const, &facebook::fboss::BcmHostKey::needsMplsTunnel>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = std::vector; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&; User = std::integral_constant<std::vector (facebook::fboss::BcmHostKey::
)() const, &facebook::fboss::BcmHostKey::tunnelLabelStack>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = int; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<int (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::getVrf>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::
::call(D&, As ...) [with R = folly::IPAddress; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<folly::IPAddress (facebook::fboss::BcmHostKey::)() const, &facebook::fboss::BcmHostKey::addr>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = folly::Optionalfacebook::fboss::InterfaceID; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<folly::Optionalfacebook::fboss::InterfaceID (facebook::fboss::BcmHostKey::
)() const, &facebook::fboss::BcmHostKey::intfID>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<bool (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::hasLabel>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::
::call(D&, As ...) [with R = unsigned int; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<unsigned int (facebook::fboss::BcmHostKey::)() const, &facebook::fboss::BcmHostKey::getLabel>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = std::__cxx11::basic_string; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<std::__cxx11::basic_string (facebook::fboss::BcmHostKey::
)() const, &facebook::fboss::BcmHostKey::str>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {folly::Poly<const facebook::fboss::IHostKey&>}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<bool (*)(const facebook::fboss::BcmHostKey&, const facebook::fboss::BcmHostKey&), facebook::fboss::IHostKey::eqfacebook::fboss::BcmHostKey >; I = facebook::fboss::IHostKey; Args = {const facebook::fboss::BcmHostKey&}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::
::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {folly::Poly<const facebook::fboss::IHostKey&>}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<bool ()(const facebook::fboss::BcmHostKey&, const facebook::fboss::BcmHostKey&), facebook::fboss::IHostKey::ltfacebook::fboss::BcmHostKey >; I = facebook::fboss::IHostKey; Args = {const facebook::fboss::BcmHostKey&}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = bool; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<bool (facebook::fboss::BcmHostKey::
)() const, &facebook::fboss::BcmHostKey::needsMplsTunnel>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
/usr/local/include/folly/detail/PolyDetail.h:522:16: warning: ‘static R folly::detail::ThunkFn<T, User, I, folly::detail::TypeList<Args ...>, std::integral_constant<bool, ((! std::is_const<typename std::remove_reference< >::type>::value) || folly::detail::IsConstMember::value)> >::operator folly::detail::FnPtr<R, D&, As ...>() const::_::call(D&, As ...) [with R = std::vector; D = const folly::detail::Data; As = {}; T = facebook::fboss::BcmHostKey&&; User = std::integral_constant<std::vector (facebook::fboss::BcmHostKey::*)() const, &facebook::fboss::BcmHostKey::tunnelLabelStack>; I = facebook::fboss::IHostKey; Args = {}]’ used but never defined
CMakeFiles/fboss_agent.dir/build.make:590: recipe for target 'CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmHostKey.cpp.o' failed
make[2]: *** [CMakeFiles/fboss_agent.dir/fboss/agent/hw/bcm/BcmHostKey.cpp.o] Error 1
CMakeFiles/Makefile2:907: recipe for target 'CMakeFiles/fboss_agent.dir/all' failed
make[1]: *** [CMakeFiles/fboss_agent.dir/all] Error 2
Makefile:140: recipe for target 'all' failed
make: *** [all] Error 2

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions