libcxx: update to LLVM 18
release/18.x branch, commit 78b99c73ee4b96fe9ce0e294d4632326afb2db42 This adds the flag `-D_LIBCPP_HARDENING_MODE` which is determined based on the Zig optimization mode. This commit also fixes libunwind, libcxx, and libcxxabi to properly report sub compilation errors.
This commit is contained in:
33
lib/libcxx/src/charconv.cpp
vendored
33
lib/libcxx/src/charconv.cpp
vendored
@@ -15,22 +15,13 @@ _LIBCPP_BEGIN_NAMESPACE_STD
|
||||
|
||||
#ifndef _LIBCPP_ABI_DO_NOT_EXPORT_TO_CHARS_BASE_10
|
||||
|
||||
namespace __itoa
|
||||
{
|
||||
namespace __itoa {
|
||||
|
||||
_LIBCPP_EXPORTED_FROM_ABI char*
|
||||
__u32toa(uint32_t value, char* buffer) noexcept
|
||||
{
|
||||
return __base_10_u32(buffer, value);
|
||||
}
|
||||
_LIBCPP_EXPORTED_FROM_ABI char* __u32toa(uint32_t value, char* buffer) noexcept { return __base_10_u32(buffer, value); }
|
||||
|
||||
_LIBCPP_EXPORTED_FROM_ABI char*
|
||||
__u64toa(uint64_t value, char* buffer) noexcept
|
||||
{
|
||||
return __base_10_u64(buffer, value);
|
||||
}
|
||||
_LIBCPP_EXPORTED_FROM_ABI char* __u64toa(uint64_t value, char* buffer) noexcept { return __base_10_u64(buffer, value); }
|
||||
|
||||
} // namespace __itoa
|
||||
} // namespace __itoa
|
||||
|
||||
#endif // _LIBCPP_ABI_DO_NOT_EXPORT_TO_CHARS_BASE_10
|
||||
|
||||
@@ -51,8 +42,8 @@ to_chars_result to_chars(char* __first, char* __last, double __value) {
|
||||
}
|
||||
|
||||
to_chars_result to_chars(char* __first, char* __last, long double __value) {
|
||||
return _Floating_to_chars<_Floating_to_chars_overload::_Plain>(__first, __last, static_cast<double>(__value),
|
||||
chars_format{}, 0);
|
||||
return _Floating_to_chars<_Floating_to_chars_overload::_Plain>(
|
||||
__first, __last, static_cast<double>(__value), chars_format{}, 0);
|
||||
}
|
||||
|
||||
to_chars_result to_chars(char* __first, char* __last, float __value, chars_format __fmt) {
|
||||
@@ -64,18 +55,18 @@ to_chars_result to_chars(char* __first, char* __last, double __value, chars_form
|
||||
}
|
||||
|
||||
to_chars_result to_chars(char* __first, char* __last, long double __value, chars_format __fmt) {
|
||||
return _Floating_to_chars<_Floating_to_chars_overload::_Format_only>(__first, __last, static_cast<double>(__value),
|
||||
__fmt, 0);
|
||||
return _Floating_to_chars<_Floating_to_chars_overload::_Format_only>(
|
||||
__first, __last, static_cast<double>(__value), __fmt, 0);
|
||||
}
|
||||
|
||||
to_chars_result to_chars(char* __first, char* __last, float __value, chars_format __fmt, int __precision) {
|
||||
return _Floating_to_chars<_Floating_to_chars_overload::_Format_precision>(__first, __last, __value, __fmt,
|
||||
__precision);
|
||||
return _Floating_to_chars<_Floating_to_chars_overload::_Format_precision>(
|
||||
__first, __last, __value, __fmt, __precision);
|
||||
}
|
||||
|
||||
to_chars_result to_chars(char* __first, char* __last, double __value, chars_format __fmt, int __precision) {
|
||||
return _Floating_to_chars<_Floating_to_chars_overload::_Format_precision>(__first, __last, __value, __fmt,
|
||||
__precision);
|
||||
return _Floating_to_chars<_Floating_to_chars_overload::_Format_precision>(
|
||||
__first, __last, __value, __fmt, __precision);
|
||||
}
|
||||
|
||||
to_chars_result to_chars(char* __first, char* __last, long double __value, chars_format __fmt, int __precision) {
|
||||
|
||||
Reference in New Issue
Block a user