Browse Source
Update nightly used in CI (#9098 )
* Update nightly used in CI
Move it up beyond the LLVM 19 upgrade to see if we have any issues with
LLVM 19.
prtest:full
* Update nightly version
* Fix some warnings on nightly
* Alternative fix for warnings
* More lint fixes
* More warning tweaks
pull/9110/head
Alex Crichton
3 months ago
committed by
GitHub
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with
13 additions and
6 deletions
.github/actions/install-rust/action.yml
crates/wasmtime/src/runtime/store.rs
crates/wasmtime/src/runtime/values.rs
crates/wasmtime/src/runtime/vm/cow.rs
crates/wasmtime/src/runtime/vm/gc.rs
@ -23,7 +23,7 @@ runs:
elif [ "${{ inputs.toolchain }}" = "msrv" ]; then
echo "version=1.$msrv.0" >> "$GITHUB_OUTPUT"
elif [ "${{ inputs.toolchain }}" = "wasmtime-ci-pinned-nightly" ]; then
echo "version=nightly-2024-07-25 " >> "$GITHUB_OUTPUT"
echo "version=nightly-2024-08-12 " >> "$GITHUB_OUTPUT"
else
echo "version=${{ inputs.toolchain }}" >> "$GITHUB_OUTPUT"
fi
@ -1178,13 +1178,14 @@ impl<T> StoreInner<T> {
// Temporarily take the configured behavior to avoid mutably borrowing
// multiple times.
#[ cfg_attr(not(feature = " call-hook " ), allow(unreachable_patterns)) ]
if let Some ( mut call_hook ) = self . call_hook . take ( ) {
let result = self . invoke_call_hook ( & mut call_hook , s ) ;
self . call_hook = Some ( call_hook ) ;
result
} else {
Ok ( ( ) )
return result ;
}
Ok ( ( ) )
}
fn invoke_call_hook ( & mut self , call_hook : & mut CallHookInner < T > , s : CallHook ) -> Result < ( ) > {
@ -854,9 +854,10 @@ impl Ref {
( Ref ::Any ( _ ) , HeapType ::Any ) = > true ,
( Ref ::Any ( Some ( a ) ) , HeapType ::I31 ) = > a . _is_i31 ( store ) ? ,
( Ref ::Any ( Some ( a ) ) , HeapType ::Struct ) = > a . _is_struct ( store ) ? ,
( Ref ::Any ( Some ( a ) ) , HeapType ::ConcreteStruct ( ty ) ) = > match a . _as_struct ( store ) ? {
( Ref ::Any ( Some ( a ) ) , HeapType ::ConcreteStruct ( _ ty) ) = > match a . _as_struct ( store ) ? {
None = > false ,
Some ( s ) = > s . _matches_ty ( store , ty ) ? ,
#[ cfg_attr(not(feature = " gc " ), allow(unreachable_patterns)) ]
Some ( s ) = > s . _matches_ty ( store , _ty ) ? ,
} ,
( Ref ::Any ( Some ( _ ) ) , HeapType ::Eq ) = > todo ! ( "eqref" ) ,
( Ref ::Any ( Some ( _ ) ) , HeapType ::Array ) = > todo ! ( "wasm GC arrays" ) ,
@ -1,6 +1,10 @@
//! Copy-on-write initialization support: creation of backing images for
//! modules, and logic to support mapping these backing images into memory.
// `MemoryImageSource` is an empty enum on some platforms which triggers some
// warnings
#![ cfg_attr(any(not(unix), miri), allow(unreachable_patterns)) ]
use crate ::prelude ::* ;
use crate ::runtime ::vm ::sys ::vm ::{ self , MemoryImageSource } ;
use crate ::runtime ::vm ::{ MmapVec , SendSyncPtr } ;
@ -149,6 +149,7 @@ impl GcStore {
) -> Result < Result < VMExternRef , Box < dyn Any + Send + Sync > > > {
let host_data_id = self . host_data_table . alloc ( value ) ;
match self . gc_heap . alloc_externref ( host_data_id ) ? {
#[ cfg_attr(not(feature = " gc " ), allow(unreachable_patterns)) ]
Some ( x ) = > Ok ( Ok ( x ) ) ,
None = > Ok ( Err ( self . host_data_table . dealloc ( host_data_id ) ) ) ,
}