File tree Expand file tree Collapse file tree 2 files changed +11
-2
lines changed Expand file tree Collapse file tree 2 files changed +11
-2
lines changed Original file line number Diff line number Diff line change @@ -125,8 +125,7 @@ def get_rclcpp_suffix_from_features(features):
125125) \
126126 do { \
127127 static_assert ( \
128- :: std :: is_same <typename std::remove_cv_t<typename std::remove_reference_t<decltype(logger)>> , \
129- typename :: rclcpp :: Logger > :: value , \
128+ :: std :: is_convertible_v <decltype (logger), ::rclcpp::Logger>, \
130129 " First argument to logging macros must be an rclcpp::Logger" ); \
131130@ [ if ' throttle' in feature_combination]@ \
132131 auto get_time_point = [& c = clock](rcutils_time_point_value_t * time_point ) -> rcutils_ret_t { \
Original file line number Diff line number Diff line change @@ -253,9 +253,19 @@ bool log_function_const_ref(const rclcpp::Logger & logger)
253253 return true ;
254254}
255255
256+ class DerivedLogger : public rclcpp ::Logger
257+ {
258+ public:
259+ explicit DerivedLogger (const rclcpp::Logger & logger)
260+ : rclcpp::Logger(logger) {}
261+ };
262+
256263TEST_F (TestLoggingMacros, test_log_from_node) {
257264 auto logger = rclcpp::get_logger (" test_logging_logger" );
258265 EXPECT_TRUE (log_function (logger));
259266 EXPECT_TRUE (log_function_const (logger));
260267 EXPECT_TRUE (log_function_const_ref (logger));
268+
269+ DerivedLogger derived_logger (logger);
270+ RCLCPP_INFO (derived_logger, " successful log from derived logger" );
261271}
You can’t perform that action at this time.
0 commit comments