Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ci] Add tests for gcc 13 and clang 15 #170

Merged
merged 3 commits into from
Feb 5, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 17 additions & 14 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,25 +8,28 @@ jobs:
strategy:
fail-fast: false
matrix:
compiler:
# - g++-9
- g++-10
- g++-11
- g++-12
# - clang++-12
- clang++-13
- clang++-14
cmake_args:
- ""
cxxstandard:
- 14
- 17
- 2a
include:
- compiler: g++-10
stdlib: libstdc++
- compiler: g++-11
stdlib: libstdc++
- compiler: g++-12
stdlib: libstdc++
- compiler: g++-13
stdlib: libstdc++
- compiler: clang++-13
stdlib: libc++
- compiler: clang++-14
stdlib: libc++
- compiler: clang++-15
stdlib: libstdc++
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 1
uses: actions/checkout@v4

- name: Prepare
run: cmake -E make_directory build
Expand All @@ -35,7 +38,7 @@ jobs:
working-directory: build
env:
CXX: ${{matrix.compiler}}
CXXFLAGS: -std=c++${{matrix.cxxstandard}}
CXXFLAGS: -std=c++${{matrix.cxxstandard}} -stdlib=${{matrix.stdlib}}
run: cmake -DCMAKE_BUILD_TYPE=DEBUG "-Dfrozen.coverage=ON" -DCMAKE_VERBOSE_MAKEFILE=ON ..

- name: Build
Expand Down
4 changes: 1 addition & 3 deletions .github/workflows/osx.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,7 @@ jobs:
- 2a
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 1
uses: actions/checkout@v4

- name: Prepare
run: cmake -E make_directory build
Expand Down
4 changes: 1 addition & 3 deletions .github/workflows/windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,7 @@ jobs:
- 2a
steps:
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 1
uses: actions/checkout@v4

- name: Prepare
run: cmake -E make_directory build
Expand Down
34 changes: 22 additions & 12 deletions tests/catch.hpp
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
/*
* Catch v2.13.8
* Generated: 2022-01-03 21:20:09.589503
* Catch v2.13.10
* Generated: 2022-10-16 11:01:23.452308
* ----------------------------------------------------------
* This file has been merged from multiple headers. Please don't edit it directly
* Copyright (c) 2022 Two Blue Cubes Ltd. All rights reserved.
Expand All @@ -15,7 +15,7 @@

#define CATCH_VERSION_MAJOR 2
#define CATCH_VERSION_MINOR 13
#define CATCH_VERSION_PATCH 8
#define CATCH_VERSION_PATCH 10

#ifdef __clang__
# pragma clang system_header
Expand Down Expand Up @@ -7395,8 +7395,6 @@ namespace Catch {
template <typename T, bool Destruct>
struct ObjectStorage
{
using TStorage = typename std::aligned_storage<sizeof(T), std::alignment_of<T>::value>::type;

ObjectStorage() : data() {}

ObjectStorage(const ObjectStorage& other)
Expand Down Expand Up @@ -7439,7 +7437,7 @@ namespace Catch {
return *static_cast<T*>(static_cast<void*>(&data));
}

TStorage data;
struct { alignas(T) unsigned char data[sizeof(T)]; } data;
};
}

Expand Down Expand Up @@ -7949,7 +7947,7 @@ namespace Catch {
#if defined(__i386__) || defined(__x86_64__)
#define CATCH_TRAP() __asm__("int $3\n" : : ) /* NOLINT */
#elif defined(__aarch64__)
#define CATCH_TRAP() __asm__(".inst 0xd4200000")
#define CATCH_TRAP() __asm__(".inst 0xd43e0000")
#endif

#elif defined(CATCH_PLATFORM_IPHONE)
Expand Down Expand Up @@ -13392,6 +13390,10 @@ namespace Catch {
filename.erase(0, lastSlash);
filename[0] = '#';
}
else
{
filename.insert(0, "#");
}

auto lastDot = filename.find_last_of('.');
if (lastDot != std::string::npos) {
Expand Down Expand Up @@ -13554,7 +13556,7 @@ namespace Catch {

// Handle list request
if( Option<std::size_t> listed = list( m_config ) )
return static_cast<int>( *listed );
return (std::min) (MaxExitCode, static_cast<int>(*listed));

TestGroup tests { m_config };
auto const totals = tests.execute();
Expand Down Expand Up @@ -15387,7 +15389,7 @@ namespace Catch {
}

Version const& libraryVersion() {
static Version version( 2, 13, 8, "", 0 );
static Version version( 2, 13, 10, "", 0 );
return version;
}

Expand Down Expand Up @@ -17522,12 +17524,20 @@ namespace Catch {

#ifndef __OBJC__

#ifndef CATCH_INTERNAL_CDECL
#ifdef _MSC_VER
#define CATCH_INTERNAL_CDECL __cdecl
#else
#define CATCH_INTERNAL_CDECL
#endif
#endif

#if defined(CATCH_CONFIG_WCHAR) && defined(CATCH_PLATFORM_WINDOWS) && defined(_UNICODE) && !defined(DO_NOT_USE_WMAIN)
// Standard C/C++ Win32 Unicode wmain entry point
extern "C" int wmain (int argc, wchar_t * argv[], wchar_t * []) {
extern "C" int CATCH_INTERNAL_CDECL wmain (int argc, wchar_t * argv[], wchar_t * []) {
#else
// Standard C/C++ main entry point
int main (int argc, char * argv[]) {
int CATCH_INTERNAL_CDECL main (int argc, char * argv[]) {
#endif

return Catch::Session().run( argc, argv );
Expand Down Expand Up @@ -17890,7 +17900,7 @@ using Catch::Detail::Approx;
#define INFO( msg ) (void)(0)
#define UNSCOPED_INFO( msg ) (void)(0)
#define WARN( msg ) (void)(0)
#define CAPTURE( msg ) (void)(0)
#define CAPTURE( ... ) (void)(0)

#define TEST_CASE( ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( C_A_T_C_H_T_E_S_T_ ))
#define TEST_CASE_METHOD( className, ... ) INTERNAL_CATCH_TESTCASE_NO_REGISTRATION(INTERNAL_CATCH_UNIQUE_NAME( C_A_T_C_H_T_E_S_T_ ))
Expand Down