@@ -493,7 +493,7 @@ JSONCONS_FORCE_INLINE read_json_result read_true(uint8_t* ptr, json_ref* val)
493
493
{
494
494
uint8_t *cur = ptr;
495
495
if (JSONCONS_LIKELY (utility::byte_match_4 (cur, " true" ))) {
496
- std::construct_at (val, true );
496
+ :: new (val) json_ref ( true );
497
497
// val.info = uint8_t(json_type::bool_value);
498
498
// val.uni.bool_val = true;
499
499
return read_json_result{cur + 4 , read_json_errc{}};
@@ -506,7 +506,7 @@ JSONCONS_FORCE_INLINE read_json_result read_false(uint8_t *ptr, json_ref* val)
506
506
{
507
507
uint8_t *cur = ptr;
508
508
if (JSONCONS_LIKELY (utility::byte_match_4 (cur + 1 , " alse" ))) {
509
- std::construct_at (val, false );
509
+ :: new (val) json_ref ( false );
510
510
// val.info = uint8_t(json_type::bool_value);
511
511
// val.uni.bool_val = false;
512
512
return read_json_result{cur + 5 , read_json_errc{}};
@@ -543,7 +543,7 @@ JSONCONS_FORCE_INLINE read_json_result read_inf(bool sign, uint8_t *ptr, read_js
543
543
cur += 3 ;
544
544
}
545
545
if (JSONCONS_UNLIKELY (((flags & read_json_flags::number_as_raw) != read_json_flags{}))) {
546
- std::construct_at (val, raw_json_arg, (const char *)hdr, (std::size_t )(cur - hdr));
546
+ :: new (val) json_ref ( raw_json_arg, (const char *)hdr, (std::size_t )(cur - hdr));
547
547
} else {
548
548
::new (val)json_ref (utility::f64_raw_get_inf (sign));
549
549
// val.info = uint8_t(json_type::double_value);
@@ -564,11 +564,11 @@ JSONCONS_FORCE_INLINE read_json_result read_nan(bool sign, uint8_t* ptr, read_js
564
564
cur += 3 ;
565
565
if (JSONCONS_UNLIKELY (((flags & read_json_flags::number_as_raw) != read_json_flags{})))
566
566
{
567
- std::construct_at (val, raw_json_arg, (const char *)hdr, (std::size_t )(cur - hdr));
567
+ :: new (val) json_ref ( raw_json_arg, (const char *)hdr, (std::size_t )(cur - hdr));
568
568
}
569
569
else
570
570
{
571
- std::construct_at (val, std::nan (" " ));
571
+ :: new (val) json_ref ( std::nan (" " ));
572
572
// val.info = uint8_t(json_type::double_value);
573
573
// val.uni.f64_val = std::nan("");
574
574
}
0 commit comments