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

summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorMartin Hořeňovský2023-10-28 21:34:53 +0200
committerMartin Hořeňovský2023-10-28 21:35:03 +0200
commit6ebc013b8cfe438a3a397817ad662db34a978238 (patch)
tree2e19e07413df1f273bd936036000107d37e59472
parent966d3615517c2502b565c25c25e22003efa1e759 (diff)
downloadcatch3-6ebc013b8cfe438a3a397817ad662db34a978238.tar.gz
Fix UDL definitions for C++23
Technically, the declaration should not have a space between the quotes and the underscore, because `_foo` is a reserved identifier, but `""_foo` is not. In general it works, but newer Clang versions warn about this, because WG21 wants to deprecate and later remove this form completely.
-rw-r--r--src/catch2/catch_approx.cpp4
-rw-r--r--tests/SelfTest/IntrospectiveTests/String.tests.cpp2
2 files changed, 3 insertions, 3 deletions
diff --git a/src/catch2/catch_approx.cpp b/src/catch2/catch_approx.cpp
index 407586d1..9ad4ce3e 100644
--- a/src/catch2/catch_approx.cpp
+++ b/src/catch2/catch_approx.cpp
@@ -70,10 +70,10 @@ namespace Catch {
}
namespace literals {
- Approx operator "" _a(long double val) {
+ Approx operator ""_a(long double val) {
return Approx(val);
}
- Approx operator "" _a(unsigned long long val) {
+ Approx operator ""_a(unsigned long long val) {
return Approx(val);
}
} // end namespace literals
diff --git a/tests/SelfTest/IntrospectiveTests/String.tests.cpp b/tests/SelfTest/IntrospectiveTests/String.tests.cpp
index 7a0b3b4a..43c58b49 100644
--- a/tests/SelfTest/IntrospectiveTests/String.tests.cpp
+++ b/tests/SelfTest/IntrospectiveTests/String.tests.cpp
@@ -177,7 +177,7 @@ TEST_CASE("StringRef at compilation time", "[Strings][StringRef][constexpr]") {
STATIC_REQUIRE_FALSE(sr1.empty());
STATIC_REQUIRE(sr1.size() == 3);
- using Catch::operator"" _sr;
+ using Catch::operator""_sr;
constexpr auto sr2 = ""_sr;
STATIC_REQUIRE(sr2.empty());
STATIC_REQUIRE(sr2.size() == 0);