diff --git a/.github/workflows/head_2.yml b/.github/workflows/head_2.yml index 6039a5a5..fd11a0b6 100644 --- a/.github/workflows/head_2.yml +++ b/.github/workflows/head_2.yml @@ -8,7 +8,7 @@ env: CATKIN_OPTIONS: $GITHUB_WORKSPACE/catkin.options jobs: - jammy_deb_packages: + noble_deb_packages: runs-on: ubuntu-22.04 steps: @@ -20,6 +20,17 @@ jobs: make deb-install DEB_TARGET=jammy # make cmake_dependency # requires ROS + jammy_deb_packages: + runs-on: ubuntu-22.04 + + steps: + - uses: actions/checkout@v4 + - run: sudo make install-deps + - run: $APT fakeroot devscripts build-essential + - run: | + make deb-build DEB_TARGET=jammy + make deb-install DEB_TARGET=jammy + # make cmake_dependency # requires ROS focal_deb_packages: runs-on: ubuntu-20.04 @@ -41,13 +52,28 @@ jobs: make cmake_dependency - clang_noros: - runs-on: ubuntu-22.04 + noble_gcc_noros: + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - run: sudo apt update - run: sudo make install-deps - - run: make build-tests TYPE=Debug OPTIONS=noros TARGETS="all" TC=clang ARGS=-V + - run: make build-tests TYPE=Debug OPTIONS=noros TARGETS="all" TC=gcc ARGS=-V + + noble_gcc_ros: + runs-on: ubuntu-24.04 + + env: + ROS_DISTRO: jazzy + ROS_CI_DESKTOP: noble + + steps: + - uses: actions/checkout@v4 + - run: sudo make install-ros ROS_DISTRO=$ROS_DISTRO UBUNTU_DISTRO=$ROS_CI_DESKTOP + - run: sudo make install-deps + - run: | + source /opt/ros/$ROS_DISTRO/setup.bash + make build-tests TYPE=Debug OPTIONS=ros2 TARGETS="all" TC=gcc ARGS=-V jammy_gcc_noros: @@ -82,24 +108,6 @@ jobs: - run: sudo make install-deps - run: make build-tests TYPE=Debug OPTIONS=noros TARGETS="all" TC=gcc ARGS=-V - - focal_clang_ros: - runs-on: ubuntu-20.04 - - env: - ROS_DISTRO: noetic - ROS_HOSTNAME: localhost - ROS_CI_DESKTOP: focal - - steps: - - uses: actions/checkout@v4 - - run: sudo make install-ros ROS_DISTRO=$ROS_DISTRO UBUNTU_DISTRO=$ROS_CI_DESKTOP - - run: sudo make install-deps - - run: | - source /opt/ros/$ROS_DISTRO/setup.bash - make build-tests TYPE=Debug OPTIONS=ros TARGETS="all" TC=clang ARGS=-V - - focal_gcc_ros: runs-on: ubuntu-20.04 @@ -123,60 +131,67 @@ jobs: steps: - uses: actions/checkout@v4 - run: sudo apt update - - run: $APT cppcheck - run: $APT python3-pip python3-setuptools - run: sudo pip3 install scspell3k - - run: make cppcheck - run: make spell - focal_gcc_ros_scanbuild: - runs-on: ubuntu-20.04 + noble_clang_ros_scanbuild: + runs-on: ubuntu-24.04 env: - ROS_DISTRO: noetic - ROS_HOSTNAME: localhost - ROS_CI_DESKTOP: focal + ROS_DISTRO: jazzy + ROS_CI_DESKTOP: noble steps: - uses: actions/checkout@v4 - run: sudo make install-ros ROS_DISTRO=$ROS_DISTRO UBUNTU_DISTRO=$ROS_CI_DESKTOP - run: sudo make install-deps - - run: $APT clang-tools-12 clang-tidy-12 + - run: $APT clang-tools-18 clang-tidy-18 - run: | source /opt/ros/$ROS_DISTRO/setup.bash - make clangcheck SCANBUILD=scan-build-12 OPTIONS=ros_tidy TC=gcc + make clangcheck SCANBUILD=scan-build-18 OPTIONS=ros2_tidy TC=clang - jammy_gcc_ros_scanbuild: - runs-on: ubuntu-22.04 - - env: - ROS_DISTRO: humble - ROS_CI_DESKTOP: jammy + noble_clang_noros_scanbuild: + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - - run: sudo make install-ros ROS_DISTRO=$ROS_DISTRO UBUNTU_DISTRO=$ROS_CI_DESKTOP + - run: sudo apt update - run: sudo make install-deps - - run: $APT clang-tools-15 clang-tidy-15 - - run: | - source /opt/ros/$ROS_DISTRO/setup.bash - make clangcheck SCANBUILD=scan-build-15 OPTIONS=ros2_tidy TC=gcc + - run: $APT clang-tools-18 clang-tidy-18 + - run: make clangcheck SCANBUILD=scan-build-18 OPTIONS=noros_tidy TC=clang - jammy_gcc_noros_scanbuild: + jammy_ccws: runs-on: ubuntu-22.04 - steps: - uses: actions/checkout@v4 - - run: sudo apt update - - run: sudo make install-deps - - run: $APT clang-tools-15 clang-tidy-15 - - run: make clangcheck SCANBUILD=scan-build-15 OPTIONS=noros_tidy TC=gcc + with: + repository: asherikov/ccws + - uses: actions/checkout@v4 + with: + ref: pkg_ws_2 + path: src/ariles_ws + - run: cd src/ariles_ws; make update VERSION=${GITHUB_SHA}; rm -Rf ariles2_rosparam_ws demo + - run: make bp_install_build BUILD_PROFILE=static_checks + - run: make BUILD_PROFILE=static_checks + - run: make bp_install_build BUILD_PROFILE=scan_build + - run: make dep_install PKG=ariles2_core_ws + - run: make dep_install PKG=ariles2_graphviz_ws + - run: make dep_install PKG=ariles2_namevalue2_ws + - run: make dep_install PKG=ariles2_octave_ws + - run: make dep_install PKG=ariles2_pugixml_ws + - run: make dep_install PKG=ariles2_rapidjson_ws + - run: make dep_install PKG=ariles2_ros2param_ws + - run: make dep_install PKG=ariles2_yamlcpp_ws + - run: make _ws BUILD_PROFILE=scan_build + - run: make bp_install_build BUILD_PROFILE=cppcheck + - run: make BUILD_PROFILE=static_checks BASE_BUILD_PROFILE=scan_build - jammy_ccws: - runs-on: ubuntu-22.04 + noble_ccws: + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 with: @@ -198,4 +213,5 @@ jobs: - run: make dep_install PKG=ariles2_ros2param_ws - run: make dep_install PKG=ariles2_yamlcpp_ws - run: make _ws BUILD_PROFILE=scan_build - + - run: make bp_install_build BUILD_PROFILE=cppcheck + - run: make BUILD_PROFILE=static_checks BASE_BUILD_PROFILE=scan_build diff --git a/.github/workflows/tag.yml b/.github/workflows/tag.yml index abf5f46f..19aee126 100644 --- a/.github/workflows/tag.yml +++ b/.github/workflows/tag.yml @@ -11,6 +11,21 @@ env: CATKIN_OPTIONS: $GITHUB_WORKSPACE/catkin.options jobs: + noble_deb_packages_cloudsmith: + runs-on: ubuntu-24.04 + + env: + DEB_TARGET: noble + + steps: + - uses: actions/checkout@v4 + - run: sudo make install-deps + - run: $APT fakeroot devscripts build-essential + - run: make deb-build DEB_TARGET=$DEB_TARGET + - run: pip install --upgrade cloudsmith-cli + - run: env CLOUDSMITH_API_KEY=${{ secrets.CLOUDSMITH_API_KEY }} make deb-cloudsmith DEB_TARGET=$DEB_TARGET + + jammy_deb_packages_cloudsmith: runs-on: ubuntu-22.04 diff --git a/CHANGELOG.md b/CHANGELOG.md index 52a92860..22cf0341 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,7 +7,8 @@ UNRELEASED Added ----- * `ariles2::Any2`: a replacement for deprecated `ariles2::Any`. - +* read/write `FileVisitorImplementation`: internal helper class for consistent file handling. +* Ubuntu 24 Noetic tests and binary packages. 2.3.2 ===== diff --git a/CMakeLists.txt b/CMakeLists.txt index 028bb7c5..9562bc92 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -27,7 +27,7 @@ option (ARILES_ADAPTER_ROSMSG "ROS message conversions." ON) option (ARILES_CPP_SANITIZERS "Enable sanitizers" OFF) option (ARILES_CPP_CLANG_TIDY "Enable clang-tidy" OFF) option (ARILES_VERBOSE "Verbose build" ON) -option (ARILES_BUILD_REGRESSION_TESTS "Build regression tests." ON) +option (ARILES_BUILD_REGRESSION_TESTS "Build regression tests." OFF) option (ARILES_CCACHE "Enable ccache if available" ON) set (ARILES_DEB_TARGETS "" CACHE STRING "Enable debian package generation.") diff --git a/Makefile b/Makefile index 8655e3e4..4b4b0c01 100644 --- a/Makefile +++ b/Makefile @@ -51,12 +51,13 @@ build: mkdir -p ${BUILD_SUBDIR}; cd ${BUILD_SUBDIR}; cmake -C ${ROOT_DIR}/cmake/options_${OPTIONS}.cmake\ -DCMAKE_BUILD_TYPE=${TYPE} \ - -DCMAKE_TOOLCHAIN_FILE=${CMAKE_DIR}/toolchain_${TC}.cmake\ + -DCMAKE_TOOLCHAIN_FILE=${CMAKE_DIR}/toolchain_${TC}.cmake \ ${EXTRA_CMAKE_PARAM} \ ${ROOT_DIR}; cd ${BUILD_SUBDIR}; ${MAKE} ${MAKE_FLAGS} ${TARGETS} -build-tests: build +build-tests: + ${MAKE} build EXTRA_CMAKE_PARAM="-DARILES_BUILD_REGRESSION_TESTS=ON ${EXTRA_CMAKE_PARAM}" cd ${BUILD_SUBDIR}; env ${TEST_ENV} ctest ${ARGS} # cd ${BUILD_SUBDIR}; ${MAKE} ${MAKE_FLAGS} test ${ARGS} @@ -190,7 +191,7 @@ install-ros: wget -qO- https://raw.githubusercontent.com/ros/rosdistro/master/ros.asc | sudo tee /etc/apt/trusted.gpg.d/ros.asc ${MAKE} install-ros-${ROS_DISTRO} ${APT_INSTALL} dpkg - ${APT_INSTALL} python3-rosdep python3-rosinstall python3-rosinstall-generator build-essential + ${APT_INSTALL} python3-rosdep build-essential bash -c 'source /opt/ros/${ROS_DISTRO}/setup.bash; rosdep init' rosdep update @@ -198,14 +199,20 @@ install-ros-noetic: sh -c 'test -f /etc/apt/sources.list.d/ros-latest.list \ || (echo "deb http://packages.ros.org/ros/ubuntu ${UBUNTU_DISTRO} main" > /etc/apt/sources.list.d/ros-latest.list)' apt update -qq - ${APT_INSTALL} ros-${ROS_DISTRO}-ros-base + ${APT_INSTALL} ros-${ROS_DISTRO}-ros-base python3-rosinstall python3-rosinstall-generator -install-ros-humble: +install-ros2-common: sh -c 'test -f /etc/apt/sources.list.d/ros2-latest.list \ || (echo "deb [arch=amd64,arm64] http://repo.ros2.org/ubuntu/main ${UBUNTU_DISTRO} main" > /etc/apt/sources.list.d/ros2-latest.list)' apt update -qq ${APT_INSTALL} ros-${ROS_DISTRO}-rclcpp +install-ros-humble: install-ros2-common + ${APT_INSTALL} python3-rosinstall python3-rosinstall-generator + +install-ros-jazzy: install-ros2-common + # + install-deps: ${APT_INSTALL} cmake libboost-all-dev libeigen3-dev @@ -332,7 +339,7 @@ clangcheck: -enable-checker valist.CopyToSelf \ -enable-checker valist.Uninitialized \ -enable-checker valist.Unterminated \ - ${MAKE} build TC=${TC} TYPE=${TYPE} OPTIONS=${OPTIONS} TARGETS="${TARGETS}" EXTRA_CMAKE_PARAM="-DBUILD_SHARED_LIBS=OFF ${EXTRA_CMAKE_PARAM}" + ${MAKE} build TC=${TC} TYPE=${TYPE} OPTIONS=${OPTIONS} TARGETS="${TARGETS}" EXTRA_CMAKE_PARAM="-DARILES_BUILD_REGRESSION_TESTS=ON -DBUILD_SHARED_LIBS=OFF ${EXTRA_CMAKE_PARAM}" # -enable-checker cplusplus.NewDelete # -enable-checker optin.cplusplus.VirtualCall diff --git a/README.md b/README.md index 658b98b5..367a6dfa 100644 --- a/README.md +++ b/README.md @@ -38,6 +38,9 @@ Ariles Latest version of 'ariles' @ Cloudsmith + + Latest version of 'ariles' @ Cloudsmith + diff --git a/cmake/cmakeut_compiler_flags.cmake b/cmake/cmakeut_compiler_flags.cmake index 4fc94df7..5f71bbce 100644 --- a/cmake/cmakeut_compiler_flags.cmake +++ b/cmake/cmakeut_compiler_flags.cmake @@ -103,7 +103,7 @@ function(cmakeut_compiler_flags STANDARD) set(CMAKE_CXX_CLANG_TIDY "${CMAKE_CXX_CLANG_TIDY},-llvmlibc-*") # noisy - set(CMAKE_CXX_CLANG_TIDY "${CMAKE_CXX_CLANG_TIDY},-altera-unroll-loops,-altera-id-dependent-backward-branch,-readability-identifier-length,-misc-include-cleaner") + set(CMAKE_CXX_CLANG_TIDY "${CMAKE_CXX_CLANG_TIDY},-altera-unroll-loops,-altera-id-dependent-backward-branch,-readability-identifier-length,-misc-include-cleaner,-performance-avoid-endl") # false positives? set(CMAKE_CXX_CLANG_TIDY "${CMAKE_CXX_CLANG_TIDY},-bugprone-exception-escape,-clang-analyzer-cplusplus.NewDelete") # may be later diff --git a/extra_visitors/ros2param/src/declarator.cpp b/extra_visitors/ros2param/src/declarator.cpp index e599bb71..1e50eb33 100644 --- a/extra_visitors/ros2param/src/declarator.cpp +++ b/extra_visitors/ros2param/src/declarator.cpp @@ -67,7 +67,7 @@ namespace ariles2 void Declarator::flush() { CPPUT_TRACE_FUNCTION; - CPPUT_ASSERT(impl_->publishParameters(), "Failed to set parameters."); + CPPUT_ASSERT(impl_->publishParameters(), "Failed to declare parameters."); } diff --git a/extra_visitors/ros2param/src/reader.cpp b/extra_visitors/ros2param/src/reader.cpp index 30b808ff..92b11bcc 100644 --- a/extra_visitors/ros2param/src/reader.cpp +++ b/extra_visitors/ros2param/src/reader.cpp @@ -184,7 +184,6 @@ namespace ariles2 { clear(); - rcl_interfaces::msg::ListParametersResult list_msg; parameter_names_ = std::move(nh_->list_parameters({}, std::numeric_limits::max()).names); } diff --git a/extra_visitors/ros2param/src/writer.cpp b/extra_visitors/ros2param/src/writer.cpp index d025aff0..43e91763 100644 --- a/extra_visitors/ros2param/src/writer.cpp +++ b/extra_visitors/ros2param/src/writer.cpp @@ -30,6 +30,10 @@ namespace ariles2 [[nodiscard]] bool publishParameters() const { + if (parameters_.empty()) + { + return (true); + } return (nh_->set_parameters_atomically(parameters_).successful); } }; diff --git a/include/ariles2/internal/exception.h b/include/ariles2/internal/exception.h index d3cc231f..4442094c 100644 --- a/include/ariles2/internal/exception.h +++ b/include/ariles2/internal/exception.h @@ -21,7 +21,7 @@ #define CPPUT_PERSISTENT_ASSERT(condition, ...) \ - if (!(condition)) \ + if (!(condition)) /* NOLINT */ \ { \ CPPUT_THROW(__VA_ARGS__); \ }; diff --git a/include/ariles2/visitors/aggregate.h b/include/ariles2/visitors/aggregate.h index 3c74a555..01f6f714 100644 --- a/include/ariles2/visitors/aggregate.h +++ b/include/ariles2/visitors/aggregate.h @@ -7,12 +7,12 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once #include "common.h" - namespace ariles2 { /// @ingroup aggregate diff --git a/include/ariles2/visitors/common.h b/include/ariles2/visitors/common.h index ffcc2e60..bb0f873f 100644 --- a/include/ariles2/visitors/common.h +++ b/include/ariles2/visitors/common.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once @@ -54,6 +55,7 @@ namespace ariles2 return parameters; } + // cppcheck-suppress duplInheritedMember template const t_Parameters &getParameters(const t_Ariles &ariles_class) const { diff --git a/include/ariles2/visitors/compare.h b/include/ariles2/visitors/compare.h index fde11ced..878e2164 100644 --- a/include/ariles2/visitors/compare.h +++ b/include/ariles2/visitors/compare.h @@ -172,7 +172,7 @@ namespace ariles2 #define ARILES2_PARENT_compare(v, entry) entry::arilesVisit(visitor, other, parameters); #define ARILES2_VISIT_compare \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ void arilesVisit( \ ariles2::compare::Visitor &visitor, \ const t_Other &other, \ diff --git a/include/ariles2/visitors/copyfrom.h b/include/ariles2/visitors/copyfrom.h index 0c5a9366..07583dcf 100644 --- a/include/ariles2/visitors/copyfrom.h +++ b/include/ariles2/visitors/copyfrom.h @@ -87,7 +87,7 @@ namespace ariles2 #define ARILES2_PARENT_copyfrom(v, entry) entry::arilesVisit(visitor, other, parameters); #define ARILES2_VISIT_copyfrom \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ void arilesVisit( \ ariles2::copyfrom::Visitor &visitor, \ const t_Other &other, \ diff --git a/include/ariles2/visitors/copyto.h b/include/ariles2/visitors/copyto.h index fff5aa70..f6de9086 100644 --- a/include/ariles2/visitors/copyto.h +++ b/include/ariles2/visitors/copyto.h @@ -87,7 +87,7 @@ namespace ariles2 #define ARILES2_PARENT_copyto(v, entry) entry::arilesVisit(visitor, other, parameters); #define ARILES2_VISIT_copyto \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ void arilesVisit( \ ariles2::copyto::Visitor &visitor, \ t_Other &other, \ diff --git a/include/ariles2/visitors/count.h b/include/ariles2/visitors/count.h index df44668a..586f3f53 100644 --- a/include/ariles2/visitors/count.h +++ b/include/ariles2/visitors/count.h @@ -51,7 +51,7 @@ namespace ariles2 #define ARILES2_PARENT_count(v, entry) +entry::arilesVisit(visitor, parameters) #define ARILES2_VISIT_count \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ std::size_t arilesVisit( \ const t_Visitor &visitor, \ const typename t_Visitor::Parameters ¶meters, \ diff --git a/include/ariles2/visitors/count_missing.h b/include/ariles2/visitors/count_missing.h index f02d2ad2..6233396e 100644 --- a/include/ariles2/visitors/count_missing.h +++ b/include/ariles2/visitors/count_missing.h @@ -51,7 +51,7 @@ namespace ariles2 #define ARILES2_PARENT_count_missing(v, entry) +entry::arilesVisit(visitor, parameters) #define ARILES2_VISIT_count_missing \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ std::size_t arilesVisit( \ const t_Visitor &visitor, \ const typename t_Visitor::Parameters ¶meters, \ diff --git a/include/ariles2/visitors/defaults.h b/include/ariles2/visitors/defaults.h index 7984f7ab..b5416f7e 100644 --- a/include/ariles2/visitors/defaults.h +++ b/include/ariles2/visitors/defaults.h @@ -109,7 +109,7 @@ namespace ariles2 #define ARILES2_NAMED_ENTRY_defaults(v, entry, name) visitor.visitMapEntry(entry, #name, parameters); #define ARILES2_PARENT_defaults(v, entry) #define ARILES2_VISIT_defaults \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ void arilesVisit( \ const t_Visitor &visitor, \ const typename t_Visitor::Parameters ¶meters, \ diff --git a/include/ariles2/visitors/finalize.h b/include/ariles2/visitors/finalize.h index f72fa0bc..87ddd80f 100644 --- a/include/ariles2/visitors/finalize.h +++ b/include/ariles2/visitors/finalize.h @@ -48,7 +48,7 @@ namespace ariles2 #define ARILES2_NAMED_ENTRY_finalize(v, entry, name) visitor.visitMapEntry(entry, #name, parameters); #define ARILES2_PARENT_finalize(v, entry) #define ARILES2_VISIT_finalize \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ void arilesVisit( \ const t_Visitor &visitor, \ const typename t_Visitor::Parameters ¶meters, \ diff --git a/include/ariles2/visitors/prewrite.h b/include/ariles2/visitors/prewrite.h index 56e52643..8857e9ea 100644 --- a/include/ariles2/visitors/prewrite.h +++ b/include/ariles2/visitors/prewrite.h @@ -38,7 +38,7 @@ namespace ariles2 #define ARILES2_NAMED_ENTRY_prewrite(v, entry, name) visitor.visitMapEntry(entry, #name, parameters); #define ARILES2_PARENT_prewrite(v, entry) #define ARILES2_VISIT_prewrite \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ void arilesVisit( \ const t_Visitor &visitor, \ const typename t_Visitor::Parameters ¶meters, \ diff --git a/include/ariles2/visitors/read.h b/include/ariles2/visitors/read.h index a2813803..3dd1687c 100644 --- a/include/ariles2/visitors/read.h +++ b/include/ariles2/visitors/read.h @@ -532,7 +532,7 @@ namespace ariles2 #define ARILES2_NAMED_ENTRY_read(v, entry, name) visitor.visitMapEntry(entry, #name, parameters); #define ARILES2_PARENT_read(v, entry) #define ARILES2_VISIT_read \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ void arilesVisit( \ t_Visitor &visitor, \ const typename t_Visitor::Parameters ¶meters, \ diff --git a/include/ariles2/visitors/write.h b/include/ariles2/visitors/write.h index 2b2d02c8..56f49d60 100644 --- a/include/ariles2/visitors/write.h +++ b/include/ariles2/visitors/write.h @@ -413,7 +413,7 @@ namespace ariles2 #define ARILES2_NAMED_ENTRY_write(v, entry, name) visitor.visitMapEntry(entry, #name, parameters); #define ARILES2_PARENT_write(v, entry) #define ARILES2_VISIT_write \ - template \ + template /* cppcheck-suppress duplInheritedMember */ \ void arilesVisit( \ t_Visitor &visitor, \ const typename t_Visitor::Parameters ¶meters, \ diff --git a/tests/api_v2/demo_api_v2.cpp b/tests/api_v2/demo_api_v2.cpp index 49f78696..56d004c3 100644 --- a/tests/api_v2/demo_api_v2.cpp +++ b/tests/api_v2/demo_api_v2.cpp @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember // ============================================================================ diff --git a/tests/api_v2/demo_api_v2_ros2.cpp b/tests/api_v2/demo_api_v2_ros2.cpp index 1dd33036..6ead56ee 100644 --- a/tests/api_v2/demo_api_v2_ros2.cpp +++ b/tests/api_v2/demo_api_v2_ros2.cpp @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember // ============================================================================ @@ -132,7 +133,7 @@ int main(int argc, char *argv[]) try { rclcpp::init(argc, argv); - rclcpp::Node::SharedPtr nh = rclcpp::Node::make_shared( + const rclcpp::Node::SharedPtr nh = rclcpp::Node::make_shared( "demo_api_v2_ros2", // although ariles provides Declarator visitor, declaring // parameters in general case is not possible since generic diff --git a/tests/api_v2/types/abstract_pointer.h b/tests/api_v2/types/abstract_pointer.h index 62c71e34..3db30664 100644 --- a/tests/api_v2/types/abstract_pointer.h +++ b/tests/api_v2/types/abstract_pointer.h @@ -5,6 +5,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/any.h b/tests/api_v2/types/any.h index c15dcdab..635e695c 100644 --- a/tests/api_v2/types/any.h +++ b/tests/api_v2/types/any.h @@ -5,6 +5,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/ariles_diagram.h b/tests/api_v2/types/ariles_diagram.h index 7c958599..5ec4a617 100644 --- a/tests/api_v2/types/ariles_diagram.h +++ b/tests/api_v2/types/ariles_diagram.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/auto_defaults.h b/tests/api_v2/types/auto_defaults.h index 58843bf3..96c9aec8 100644 --- a/tests/api_v2/types/auto_defaults.h +++ b/tests/api_v2/types/auto_defaults.h @@ -5,6 +5,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/complex_auto_declare.h b/tests/api_v2/types/complex_auto_declare.h index de0ed8da..414dd7e1 100644 --- a/tests/api_v2/types/complex_auto_declare.h +++ b/tests/api_v2/types/complex_auto_declare.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/complex_base.h b/tests/api_v2/types/complex_base.h index 0b3cde4e..90920265 100644 --- a/tests/api_v2/types/complex_base.h +++ b/tests/api_v2/types/complex_base.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/complex_verbose.h b/tests/api_v2/types/complex_verbose.h index 12be0e4f..e3422a37 100644 --- a/tests/api_v2/types/complex_verbose.h +++ b/tests/api_v2/types/complex_verbose.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/empty.h b/tests/api_v2/types/empty.h index fae4cdf4..cf4e4c56 100644 --- a/tests/api_v2/types/empty.h +++ b/tests/api_v2/types/empty.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/enum.h b/tests/api_v2/types/enum.h index c8ec8460..a14c1459 100644 --- a/tests/api_v2/types/enum.h +++ b/tests/api_v2/types/enum.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/finalize.h b/tests/api_v2/types/finalize.h index 78e94bae..325c2ef5 100644 --- a/tests/api_v2/types/finalize.h +++ b/tests/api_v2/types/finalize.h @@ -5,6 +5,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/inheritance.h b/tests/api_v2/types/inheritance.h index 575f2f16..9610a9ff 100644 --- a/tests/api_v2/types/inheritance.h +++ b/tests/api_v2/types/inheritance.h @@ -7,6 +7,8 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember + #pragma once diff --git a/tests/api_v2/types/minimal.h b/tests/api_v2/types/minimal.h index 26e733a5..deace4c1 100644 --- a/tests/api_v2/types/minimal.h +++ b/tests/api_v2/types/minimal.h @@ -6,6 +6,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/pointers.h b/tests/api_v2/types/pointers.h index 7a8ec706..e281de70 100644 --- a/tests/api_v2/types/pointers.h +++ b/tests/api_v2/types/pointers.h @@ -5,6 +5,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/pointers_scalar.h b/tests/api_v2/types/pointers_scalar.h index f9ff7237..94e052f4 100644 --- a/tests/api_v2/types/pointers_scalar.h +++ b/tests/api_v2/types/pointers_scalar.h @@ -5,6 +5,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/simple_auto_declare.h b/tests/api_v2/types/simple_auto_declare.h index 34463f95..7b4cb824 100644 --- a/tests/api_v2/types/simple_auto_declare.h +++ b/tests/api_v2/types/simple_auto_declare.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/simple_flags.h b/tests/api_v2/types/simple_flags.h index 8722e7bb..edc687c8 100644 --- a/tests/api_v2/types/simple_flags.h +++ b/tests/api_v2/types/simple_flags.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/simple_floats.h b/tests/api_v2/types/simple_floats.h index 4dcdfe03..0893e519 100644 --- a/tests/api_v2/types/simple_floats.h +++ b/tests/api_v2/types/simple_floats.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/simple_verbose.h b/tests/api_v2/types/simple_verbose.h index 095faf18..5af7c589 100644 --- a/tests/api_v2/types/simple_verbose.h +++ b/tests/api_v2/types/simple_verbose.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once diff --git a/tests/api_v2/types/special_floats.h b/tests/api_v2/types/special_floats.h index 4adf7654..6b29d2b6 100644 --- a/tests/api_v2/types/special_floats.h +++ b/tests/api_v2/types/special_floats.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #include diff --git a/tests/api_v2/types/strictness.h b/tests/api_v2/types/strictness.h index b413374e..30cc9fff 100644 --- a/tests/api_v2/types/strictness.h +++ b/tests/api_v2/types/strictness.h @@ -7,6 +7,7 @@ @brief */ +// cppcheck-suppress-file duplInheritedMember #pragma once