diff --git a/rviz2/CMakeLists.txt b/rviz2/CMakeLists.txt index 57ee97064..99a0b174b 100644 --- a/rviz2/CMakeLists.txt +++ b/rviz2/CMakeLists.txt @@ -8,7 +8,7 @@ if(NOT CMAKE_CXX_STANDARD) endif() if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") - add_compile_options(-Wall -Wextra -Wpedantic) + add_compile_options(-Wall -Wextra -Wpedantic -Wnon-virtual-dtor -Woverloaded-virtual) endif() find_package(ament_cmake REQUIRED) diff --git a/rviz_default_plugins/CMakeLists.txt b/rviz_default_plugins/CMakeLists.txt index e9c7adb10..fd18d0690 100644 --- a/rviz_default_plugins/CMakeLists.txt +++ b/rviz_default_plugins/CMakeLists.txt @@ -8,7 +8,7 @@ if(NOT CMAKE_CXX_STANDARD) endif() if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") - add_compile_options(-Wall -Wextra -Wpedantic) + add_compile_options(-Wall -Wextra -Wpedantic -Wnon-virtual-dtor -Woverloaded-virtual) endif() # Tests currently only run on OS X @ OSRF jenkins diff --git a/rviz_default_plugins/include/rviz_default_plugins/robot/link_updater.hpp b/rviz_default_plugins/include/rviz_default_plugins/robot/link_updater.hpp index fd6ba5780..3fb42480c 100644 --- a/rviz_default_plugins/include/rviz_default_plugins/robot/link_updater.hpp +++ b/rviz_default_plugins/include/rviz_default_plugins/robot/link_updater.hpp @@ -52,6 +52,8 @@ using rviz_common::properties::StatusLevel; class RVIZ_DEFAULT_PLUGINS_PUBLIC LinkUpdater { public: + virtual ~LinkUpdater() {} + virtual bool getLinkTransforms( const std::string & link_name, Ogre::Vector3 & visual_position, Ogre::Quaternion & visual_orientation, diff --git a/rviz_rendering/CMakeLists.txt b/rviz_rendering/CMakeLists.txt index b300e02a9..76d957dc7 100644 --- a/rviz_rendering/CMakeLists.txt +++ b/rviz_rendering/CMakeLists.txt @@ -8,7 +8,7 @@ if(NOT CMAKE_CXX_STANDARD) endif() if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") - add_compile_options(-Wall -Wextra -Wpedantic) + add_compile_options(-Wall -Wextra -Wpedantic -Wnon-virtual-dtor -Woverloaded-virtual) endif() # Tests currently only run on OS X @ OSRF jenkins diff --git a/rviz_rendering/include/rviz_rendering/objects/point_cloud_renderable.hpp b/rviz_rendering/include/rviz_rendering/objects/point_cloud_renderable.hpp index 36e4aa8fa..6df6853c6 100644 --- a/rviz_rendering/include/rviz_rendering/objects/point_cloud_renderable.hpp +++ b/rviz_rendering/include/rviz_rendering/objects/point_cloud_renderable.hpp @@ -73,16 +73,14 @@ class PointCloudRenderable : public Ogre::SimpleRenderable RVIZ_RENDERING_PUBLIC virtual ~PointCloudRenderable(); -#ifdef __clang__ -#pragma clang diagnostic push -#pragma clang diagnostic ignored "-Woverloaded-virtual" +#ifndef _WIN32 +# pragma GCC diagnostic push +# pragma GCC diagnostic ignored "-Woverloaded-virtual" #endif - RVIZ_RENDERING_PUBLIC Ogre::RenderOperation * getRenderOperation() {return &mRenderOp;} - -#ifdef __clang__ -#pragma clang diagnostic pop +#ifndef _WIN32 +# pragma GCC diagnostic pop #endif RVIZ_RENDERING_PUBLIC diff --git a/rviz_rendering_tests/CMakeLists.txt b/rviz_rendering_tests/CMakeLists.txt index ed87f5e7f..457d0e442 100644 --- a/rviz_rendering_tests/CMakeLists.txt +++ b/rviz_rendering_tests/CMakeLists.txt @@ -8,7 +8,7 @@ if(NOT CMAKE_CXX_STANDARD) endif() if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") - add_compile_options(-Wall -Wextra -Wpedantic) + add_compile_options(-Wall -Wextra -Wpedantic -Wnon-virtual-dtor -Woverloaded-virtual) endif() # Tests currently only run on OS X @ OSRF jenkins diff --git a/rviz_visual_testing_framework/CMakeLists.txt b/rviz_visual_testing_framework/CMakeLists.txt index 988af23ed..72e9c60c5 100644 --- a/rviz_visual_testing_framework/CMakeLists.txt +++ b/rviz_visual_testing_framework/CMakeLists.txt @@ -19,7 +19,7 @@ if(NOT CMAKE_CXX_STANDARD) endif() if(CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID MATCHES "Clang") - add_compile_options(-Wall -Wextra -Wpedantic) + add_compile_options(-Wall -Wextra -Wpedantic -Wnon-virtual-dtor -Woverloaded-virtual) endif() find_package(ament_cmake REQUIRED)