@@ -447,10 +447,12 @@ extension Float80: CVarArg, _CVarArgAligned {
447
447
// runtime.
448
448
@_fixed_layout
449
449
@usableFromInline // c-abi
450
+ @unsafe
450
451
final internal class __VaListBuilder {
451
452
#if arch(x86_64) || arch(s390x)
452
453
@frozen // c-abi
453
454
@usableFromInline
455
+ @safe
454
456
internal struct Header {
455
457
@usableFromInline // c-abi
456
458
internal var gp_offset = CUnsignedInt ( 0 )
@@ -468,21 +470,27 @@ final internal class __VaListBuilder {
468
470
#endif
469
471
470
472
@usableFromInline // c-abi
473
+ @safe
471
474
internal var gpRegistersUsed = 0
475
+
472
476
@usableFromInline // c-abi
477
+ @safe
473
478
internal var fpRegistersUsed = 0
474
479
475
480
#if arch(x86_64) || arch(s390x)
476
481
@usableFromInline // c-abi
482
+ @safe
477
483
final // Property must be final since it is used by Builtin.addressof.
478
484
internal var header = Header ( )
479
485
#endif
480
486
481
487
@usableFromInline // c-abi
488
+ @safe
482
489
internal var storage : ContiguousArray < Int >
483
490
484
491
#if !_runtime(_ObjC)
485
492
@usableFromInline // c-abi
493
+ @safe
486
494
internal var retainer = [ CVarArg] ( )
487
495
#endif
488
496
@@ -560,9 +568,9 @@ final internal class __VaListBuilder {
560
568
internal func va_list( ) -> CVaListPointer {
561
569
#if arch(x86_64) || arch(s390x)
562
570
header. reg_save_area = storage. _baseAddress
563
- header. overflow_arg_area
571
+ unsafe header. overflow_arg_area
564
572
= storage. _baseAddress + _registerSaveWords
565
- return CVaListPointer (
573
+ return unsafe CVaListPointer (
566
574
_fromUnsafeMutablePointer: UnsafeMutableRawPointer (
567
575
Builtin . addressof ( & self . header) ) )
568
576
#elseif arch(arm64)
0 commit comments