CVSROOT:        /cvs
Module name:    ports
Changes by:     [email protected]       2025/09/27 10:05:37

Modified files:
        databases/mongodb/44: Makefile 
Added files:
        databases/mongodb/44/patches: 
                                      
patch-src_third_party_fmt_dist_include_fmt_format_h 

Log message:
Unbreak mongodb-4.4.29 with libcxx19

"The base template for std::char_traits has been removed in LLVM 19. If you are
using std::char_traits with types other than char, wchar_t, char8_t, char16_t,
char32_t or a custom character type for which you specialized std::char_traits,
your code will stop working. The Standard does not mandate that a base template
is provided, and such a base template is bound to be incorrect for some types,
which could currently cause unexpected behavior while going undetected."

https://releases.llvm.org/19.1.0/projects/libcxx/docs/ReleaseNotes.htm

This affects fmt 6.x used by MongoDB 4.4, which uses fmt::char8_t with
std::char_traits.

Add a minimal std::char_traits impl for fmt::char8_t based on the
libc++ reference implementation for char traits:
/libcxx/include/__string/char_traits.h

This is a minimal fix to fix mongodb44 with libcxx19 from base.

OK sthen@

Reply via email to