1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-18 00:10:04 +00:00

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
This commit is contained in:
Dimitry Andric 2024-11-03 15:31:57 +01:00
parent e8b22e75d7
commit c3ec17f889

View File

@ -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; }