git: c3ec17f889ef - main - www/davix: fix build with clang 19
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 03 Nov 2024 20:53:37 UTC
The branch main has been updated by dim:
URL: https://cgit.FreeBSD.org/ports/commit/?id=c3ec17f889effeee0a46d666dbd4f82c8cc77fac
commit c3ec17f889effeee0a46d666dbd4f82c8cc77fac
Author: Dimitry Andric <dim@FreeBSD.org>
AuthorDate: 2024-11-03 14:31:57 +0000
Commit: Dimitry Andric <dim@FreeBSD.org>
CommitDate: 2024-11-03 20:53:19 +0000
www/davix: fix build with clang 19
Clang 19 has become more strict about assigning to const class members,
resulting in errors similar to:
/wrkdirs/usr/ports/www/davix/work/davix-R_0_8_7/src/libs/rapidjson/document.h:319:82: error: cannot assign to non-static data member 'length' with const-qualified type 'const SizeType' (aka 'const unsigned int')
319 | GenericStringRef& operator=(const GenericStringRef& rhs) { s = rhs.s; length = rhs.length; }
| ~~~~~~ ^
/wrkdirs/usr/ports/www/davix/work/davix-R_0_8_7/src/libs/rapidjson/document.h:325:20: note: non-static data member 'length' declared const here
325 | const SizeType length; //!< length of the string (excluding the trailing NULL terminator)
| ~~~~~~~~~~~~~~~^~~~~~
Upstream rapidjson has fixed this in commit 3b2441b8 [1], which simply
removes the assignment operator.
[1] https://github.com/Tencent/rapidjson/commit/3b2441b8
PR: 282515
Approved by: yuri (maintainer)
MFH: 2024Q4
---
www/davix/files/patch-src_libs_rapidjson_document.h | 11 +++++++++++
1 file changed, 11 insertions(+)
diff --git a/www/davix/files/patch-src_libs_rapidjson_document.h b/www/davix/files/patch-src_libs_rapidjson_document.h
new file mode 100644
index 000000000000..346bcdd112a0
--- /dev/null
+++ b/www/davix/files/patch-src_libs_rapidjson_document.h
@@ -0,0 +1,11 @@
+--- src/libs/rapidjson/document.h.orig 2024-06-24 15:50:44 UTC
++++ src/libs/rapidjson/document.h
+@@ -316,8 +316,6 @@ struct GenericStringRef {
+
+ GenericStringRef(const GenericStringRef& rhs) : s(rhs.s), length(rhs.length) {}
+
+- GenericStringRef& operator=(const GenericStringRef& rhs) { s = rhs.s; length = rhs.length; }
+-
+ //! implicit conversion to plain CharType pointer
+ operator const Ch *() const { return s; }
+