Read-only mirrors. Development, issues and pull requests are on GitHub.

summaryrefslogtreecommitdiffhomepage
path: root/extras
diff options
context:
space:
mode:
authorMartin Hořeňovský2020-10-08 15:26:30 +0200
committerMartin Hořeňovský2020-10-08 15:26:30 +0200
commitb9853b4b356b83bb580c746c3a1f11101f9af54f (patch)
treebbf6ab6d04a934d7c40fefab31316fc923ec61fa /extras
parent853565bfb88bacab425b55e141cee3a40d72d53c (diff)
downloadcatch3-3.0.0-preview3.tar.gz
Bump version to v3.0.0 preview 3v3.0.0-preview3
Diffstat (limited to 'extras')
-rw-r--r--extras/catch_amalgamated.cpp17
-rw-r--r--extras/catch_amalgamated.hpp47
2 files changed, 52 insertions, 12 deletions
diff --git a/extras/catch_amalgamated.cpp b/extras/catch_amalgamated.cpp
index c4465d74..43f3eed9 100644
--- a/extras/catch_amalgamated.cpp
+++ b/extras/catch_amalgamated.cpp
@@ -5,8 +5,8 @@
// SPDX-License-Identifier: BSL-1.0
-// Catch v3.0.0-preview.2
-// Generated: 2020-09-07 20:00:04.097397
+// Catch v3.0.0-preview.3
+// Generated: 2020-10-08 13:59:26.616931
// ----------------------------------------------------------
// This file is an amalgamation of multiple different files.
// You probably shouldn't edit it directly.
@@ -1784,7 +1784,7 @@ namespace Catch {
}
Version const& libraryVersion() {
- static Version version( 3, 0, 0, "preview", 2 );
+ static Version version( 3, 0, 0, "preview", 3 );
return version;
}
@@ -2678,13 +2678,14 @@ namespace Catch {
// vvv formerly catch_uncaught_exceptions.cpp vvv //
////////////////////////////////////////////////////
+
#include <exception>
namespace Catch {
bool uncaught_exceptions() {
#if defined(CATCH_CONFIG_DISABLE_EXCEPTIONS)
return false;
-#elif defined(CATCH_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS) || (defined(__cpp_lib_uncaught_exceptions) && !defined(CATCH_CONFIG_NO_CPP17_UNCAUGHT_EXCEPTIONS))
+#elif defined(CATCH_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS)
return std::uncaught_exceptions() > 0;
#else
return std::uncaught_exception();
@@ -3988,7 +3989,7 @@ namespace Catch {
if (tmpnam_s(m_buffer)) {
CATCH_RUNTIME_ERROR("Could not get a temp filename");
}
- if (fopen_s(&m_file, m_buffer, "w")) {
+ if (fopen_s(&m_file, m_buffer, "w+")) {
char buffer[100];
if (strerror_s(buffer, errno)) {
CATCH_RUNTIME_ERROR("Could not translate errno to a string");
@@ -5188,10 +5189,10 @@ namespace Catch {
namespace {
struct HashTest {
- explicit HashTest(SimplePcg32& rng) {
- basis = rng();
+ explicit HashTest(SimplePcg32& rng_inst) {
+ basis = rng_inst();
basis <<= 32;
- basis |= rng();
+ basis |= rng_inst();
}
uint64_t basis;
diff --git a/extras/catch_amalgamated.hpp b/extras/catch_amalgamated.hpp
index b78821fa..7f832413 100644
--- a/extras/catch_amalgamated.hpp
+++ b/extras/catch_amalgamated.hpp
@@ -5,8 +5,8 @@
// SPDX-License-Identifier: BSL-1.0
-// Catch v3.0.0-preview.2
-// Generated: 2020-09-07 20:00:03.521464
+// Catch v3.0.0-preview.3
+// Generated: 2020-10-08 13:59:26.309308
// ----------------------------------------------------------
// This file is an amalgamation of multiple different files.
// You probably shouldn't edit it directly.
@@ -289,7 +289,7 @@ namespace Catch {
// We have to avoid both ICC and Clang, because they try to mask themselves
// as gcc, and we want only GCC in this block
-#if defined(__GNUC__) && !defined(__clang__) && !defined(__ICC)
+#if defined(__GNUC__) && !defined(__clang__) && !defined(__ICC) && !defined(__CUDACC__)
# define CATCH_INTERNAL_START_WARNINGS_SUPPRESSION _Pragma( "GCC diagnostic push" )
# define CATCH_INTERNAL_STOP_WARNINGS_SUPPRESSION _Pragma( "GCC diagnostic pop" )
@@ -321,7 +321,7 @@ namespace Catch {
// ```
//
// Therefore, `CATCH_INTERNAL_IGNORE_BUT_WARN` is not implemented.
-# if !defined(__ibmxl__)
+# if !defined(__ibmxl__) && !defined(__CUDACC__)
# define CATCH_INTERNAL_IGNORE_BUT_WARN(...) (void)__builtin_constant_p(__VA_ARGS__) /* NOLINT(cppcoreguidelines-pro-type-vararg, hicpp-vararg) */
# endif
@@ -7472,6 +7472,45 @@ namespace Catch {
#endif // CATCH_INTERFACES_ALL_HPP_INCLUDED
+
+/** \file
+ * Wrapper for UNCAUGHT_EXCEPTIONS configuration option
+ *
+ * For some functionality, Catch2 requires to know whether there is
+ * an active exception. Because `std::uncaught_exception` is deprecated
+ * in C++17, we want to use `std::uncaught_exceptions` if possible.
+ */
+
+#ifndef CATCH_CONFIG_UNCAUGHT_EXCEPTIONS_HPP
+#define CATCH_CONFIG_UNCAUGHT_EXCEPTIONS_HPP
+
+#if defined(_MSC_VER)
+# if _MSC_VER >= 1900 // Visual Studio 2015 or newer
+# define CATCH_INTERNAL_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS
+# endif
+#endif
+
+
+#include <exception>
+
+#if defined(__cpp_lib_uncaught_exceptions) \
+ && !defined(CATCH_INTERNAL_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS)
+
+# define CATCH_INTERNAL_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS
+#endif // __cpp_lib_uncaught_exceptions
+
+
+#if defined(CATCH_INTERNAL_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS) \
+ && !defined(CATCH_CONFIG_NO_CPP17_UNCAUGHT_EXCEPTIONS) \
+ && !defined(CATCH_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS)
+
+# define CATCH_CONFIG_CPP17_UNCAUGHT_EXCEPTIONS
+#endif
+
+
+#endif // CATCH_CONFIG_UNCAUGHT_EXCEPTIONS_HPP
+
+
#ifndef CATCH_CONSOLE_COLOUR_HPP_INCLUDED
#define CATCH_CONSOLE_COLOUR_HPP_INCLUDED