mirror of
https://github.com/catchorg/Catch2.git
synced 2024-11-25 06:46:10 +01:00
fix: Clang 19 -Wc++20-extensions warning in template test macros (#2910)
- Added INTERNAL_CATCH_TEMPLATE_TEST_CASE_HANDLE_EMPTY macro for Clang 19+ - Modified template test case macro expansion path for Clang 19+ - Keeps original behavior for other compilers and older Clang versions
This commit is contained in:
parent
156d28ed7c
commit
2487da6f9f
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
// Copyright Catch2 Authors
|
// Copyright Catch2 Authors
|
||||||
// Distributed under the Boost Software License, Version 1.0.
|
// Distributed under the Boost Software License, Version 1.0.
|
||||||
// (See accompanying file LICENSE.txt or copy at
|
// (See accompanying file LICENSE.txt or copy at
|
||||||
@ -8,15 +7,10 @@
|
|||||||
#ifndef CATCH_TEMPLATE_TEST_MACROS_HPP_INCLUDED
|
#ifndef CATCH_TEMPLATE_TEST_MACROS_HPP_INCLUDED
|
||||||
#define CATCH_TEMPLATE_TEST_MACROS_HPP_INCLUDED
|
#define CATCH_TEMPLATE_TEST_MACROS_HPP_INCLUDED
|
||||||
|
|
||||||
// We need this suppression to leak, because it took until GCC 10
|
|
||||||
// for the front end to handle local suppression via _Pragma properly
|
|
||||||
// inside templates (so `TEMPLATE_TEST_CASE` and co).
|
|
||||||
// **THIS IS DIFFERENT FOR STANDARD TESTS, WHERE GCC 9 IS SUFFICIENT**
|
|
||||||
#if defined(__GNUC__) && !defined(__clang__) && !defined(__ICC) && __GNUC__ < 10
|
#if defined(__GNUC__) && !defined(__clang__) && !defined(__ICC) && __GNUC__ < 10
|
||||||
#pragma GCC diagnostic ignored "-Wparentheses"
|
#pragma GCC diagnostic ignored "-Wparentheses"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#include <catch2/catch_test_macros.hpp>
|
#include <catch2/catch_test_macros.hpp>
|
||||||
#include <catch2/internal/catch_template_test_registry.hpp>
|
#include <catch2/internal/catch_template_test_registry.hpp>
|
||||||
#include <catch2/internal/catch_preprocessor.hpp>
|
#include <catch2/internal/catch_preprocessor.hpp>
|
||||||
|
Loading…
Reference in New Issue
Block a user