@@ -469,47 +469,51 @@ mod verify {
469469 }
470470 }
471471
472- // unsafe fn deallocate(&self, ptr: NonNull<u8>, layout: Layout)
473- #[ kani:: proof_for_contract( Allocator :: deallocate) ]
474- pub fn check_deallocate ( ) {
475- let obj : & dyn Allocator = & Global ;
476- let raw_ptr = kani:: any :: < usize > ( ) as * mut u8 ;
477- unsafe {
478- let n = NonNull :: new_unchecked ( raw_ptr) ;
479- let _ = obj. deallocate ( n, kani:: any ( ) ) ;
480- }
481- }
482-
483- // unsafe fn grow(&self, ptr: NonNull<u8>, old_layout: Layout, new_layout: Layout) -> Result<NonNull<[u8]>, AllocError>
484- #[ kani:: proof_for_contract( Allocator :: grow) ]
485- pub fn check_grow ( ) {
486- let obj : & dyn Allocator = & Global ;
487- let raw_ptr = kani:: any :: < usize > ( ) as * mut u8 ;
488- unsafe {
489- let n = NonNull :: new_unchecked ( raw_ptr) ;
490- let _ = obj. grow ( n, kani:: any ( ) , kani:: any ( ) ) ;
491- }
492- }
493-
494- // unsafe fn grow_zeroed(&self, ptr: NonNull<u8>, old_layout: Layout, new_layout: Layout) -> Result<NonNull<[u8]>, AllocError>
495- #[ kani:: proof_for_contract( Allocator :: grow_zeroed) ]
496- pub fn check_grow_zeroed ( ) {
497- let obj : & dyn Allocator = & Global ;
498- let raw_ptr = kani:: any :: < usize > ( ) as * mut u8 ;
499- unsafe {
500- let n = NonNull :: new_unchecked ( raw_ptr) ;
501- let _ = obj. grow_zeroed ( n, kani:: any ( ) , kani:: any ( ) ) ;
502- }
503- }
504-
505- // unsafe fn shrink(&self, ptr: NonNull<u8>, old_layout: Layout, new_layout: Layout) -> Result<NonNull<[u8]>, AllocError>
506- #[ kani:: proof_for_contract( Allocator :: shrink) ]
507- pub fn check_shrink ( ) {
508- let obj : & dyn Allocator = & Global ;
509- let raw_ptr = kani:: any :: < usize > ( ) as * mut u8 ;
510- unsafe {
511- let n = NonNull :: new_unchecked ( raw_ptr) ;
512- let _ = obj. shrink ( n, kani:: any ( ) , kani:: any ( ) ) ;
513- }
514- }
472+ // TODO: disabled as Kani does not currently support contracts on traits
473+ // // unsafe fn deallocate(&self, ptr: NonNull<u8>, layout: Layout)
474+ // #[kani::proof_for_contract(Allocator::deallocate)]
475+ // pub fn check_deallocate() {
476+ // let obj : &dyn Allocator = &Global;
477+ // let raw_ptr = kani::any::<usize>() as *mut u8;
478+ // unsafe {
479+ // let n = NonNull::new_unchecked(raw_ptr);
480+ // let _ = obj.deallocate(n, kani::any());
481+ // }
482+ // }
483+
484+ // TODO: disabled as Kani does not currently support contracts on traits
485+ // // unsafe fn grow(&self, ptr: NonNull<u8>, old_layout: Layout, new_layout: Layout) -> Result<NonNull<[u8]>, AllocError>
486+ // #[kani::proof_for_contract(Allocator::grow)]
487+ // pub fn check_grow() {
488+ // let obj : &dyn Allocator = &Global;
489+ // let raw_ptr = kani::any::<usize>() as *mut u8;
490+ // unsafe {
491+ // let n = NonNull::new_unchecked(raw_ptr);
492+ // let _ = obj.grow(n, kani::any(), kani::any());
493+ // }
494+ // }
495+
496+ // TODO: disabled as Kani does not currently support contracts on traits
497+ // // unsafe fn grow_zeroed(&self, ptr: NonNull<u8>, old_layout: Layout, new_layout: Layout) -> Result<NonNull<[u8]>, AllocError>
498+ // #[kani::proof_for_contract(Allocator::grow_zeroed)]
499+ // pub fn check_grow_zeroed() {
500+ // let obj : &dyn Allocator = &Global;
501+ // let raw_ptr = kani::any::<usize>() as *mut u8;
502+ // unsafe {
503+ // let n = NonNull::new_unchecked(raw_ptr);
504+ // let _ = obj.grow_zeroed(n, kani::any(), kani::any());
505+ // }
506+ // }
507+
508+ // TODO: disabled as Kani does not currently support contracts on traits
509+ // // unsafe fn shrink(&self, ptr: NonNull<u8>, old_layout: Layout, new_layout: Layout) -> Result<NonNull<[u8]>, AllocError>
510+ // #[kani::proof_for_contract(Allocator::shrink)]
511+ // pub fn check_shrink() {
512+ // let obj : &dyn Allocator = &Global;
513+ // let raw_ptr = kani::any::<usize>() as *mut u8;
514+ // unsafe {
515+ // let n = NonNull::new_unchecked(raw_ptr);
516+ // let _ = obj.shrink(n, kani::any(), kani::any());
517+ // }
518+ // }
515519}
0 commit comments