VYPR
High severityNVD Advisory· Published Feb 19, 2026· Updated Feb 19, 2026

rs-soroban-sdk #[contractimpl] macro calls inherent function instead of trait function when names collide

CVE-2026-26267

Description

soroban-sdk is a Rust SDK for Soroban contracts. Prior to versions 22.0.10, 23.5.2, and 25.1.1, the #[contractimpl] macro contains a bug in how it wires up function calls. #[contractimpl] generates code that uses MyContract::value() style calls even when it's processing the trait version. This means if an inherent function is also defined with the same name, the inherent function gets called instead of the trait function. This means the Wasm-exported entry point silently calls the wrong function when two conditions are met simultaneously: First, an impl Trait for MyContract block is defined with one or more functions, with #[contractimpl] applied. Second, an impl MyContract block is defined with one or more identically named functions, without #[contractimpl] applied. If the trait version contains important security checks, such as verifying the caller is authorized, that the inherent version does not, those checks are bypassed. Anyone interacting with the contract through its public interface will call the wrong function. The problem is patched in soroban-sdk-macros versions 22.0.10, 23.5.2, and 25.1.1. The fix changes the generated call from <Type>::func() to <Type as Trait>::func() when processing trait implementations, ensuring Rust resolves to the trait associated function regardless of whether an inherent function with the same name exists. Users should upgrade to soroban-sdk-macros 22.0.10, 23.5.2, or 25.1.1 and recompile their contracts. If upgrading is not immediately possible, contract developers can avoid the issue by ensuring that no inherent associated function on the contract type shares a name with any function in the trait implementation. Renaming or removing the conflicting inherent function eliminates the ambiguity and causes the macro-generated code to correctly resolve to the trait function.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
soroban-sdk-macroscrates.io
>= 25.0.0, < 25.1.125.1.1
soroban-sdk-macroscrates.io
>= 23.0.0, < 23.5.223.5.2
soroban-sdk-macroscrates.io
< 22.0.1022.0.10

Affected products

1

Patches

1
e92a3933e5f9

Fix trait method call resolution in contractimpl (#1729)

27 files changed · +292 351
  • soroban-sdk-macros/src/derive_fn.rs+5 7 modified
    @@ -49,7 +49,11 @@ pub fn derive_pub_fn(
         // Collect errors as they are encountered and emit them at the end.
         let mut errors = Vec::<Error>::new();
     
    -    let call = quote! { <#impl_ty>::#ident };
    +    let call = if let Some(t) = trait_ident {
    +        quote! { <#impl_ty as #t>::#ident }
    +    } else {
    +        quote! { <#impl_ty>::#ident }
    +    };
     
         // Prepare the env input.
         let env_input = inputs.first().and_then(|a| match a {
    @@ -157,11 +161,6 @@ pub fn derive_pub_fn(
         };
         let slice_args: Vec<TokenStream2> = (0..wrap_args.len()).map(|n| quote! { args[#n] }).collect();
         let arg_count = slice_args.len();
    -    let use_trait = if let Some(t) = trait_ident {
    -        quote! { use #t }
    -    } else {
    -        quote! {}
    -    };
     
         // If errors have occurred, render them instead.
         if !errors.is_empty() {
    @@ -202,7 +201,6 @@ pub fn derive_pub_fn(
             #[allow(non_snake_case)]
             #[deprecated(note = #deprecated_note)]
             pub fn #invoke_raw(env: #crate_path::Env, #(#wrap_args),*) -> #crate_path::Val {
    -            #use_trait;
                 <_ as #crate_path::IntoVal<#crate_path::Env, #crate_path::Val>>::into_val(
                     #[allow(deprecated)]
                     &#call(
    
  • soroban-sdk/src/tests/contractimpl_trait_call_resolution.rs+53 0 added
    @@ -0,0 +1,53 @@
    +use crate as soroban_sdk;
    +use soroban_sdk::{contract, contractimpl, Env};
    +
    +// ---------------------------------------------------------------------------
    +// Test: when #[contractimpl] is applied to `impl Trait for Type`, the
    +// generated WASM export must call the *trait* associated function, not an
    +// inherent associated function that happens to share the same name.
    +//
    +// Rust's name-resolution rules say that `<Type>::func()` resolves to the
    +// inherent associated function when one exists, even if a trait with the
    +// same function is in scope.  The only way to force the trait version is
    +// Universal Function Call Syntax: `<Type as Trait>::func()`.
    +//
    +// This test creates a contract where both the inherent and trait versions
    +// of `value` return a different u32.  We then check which value was
    +// returned to determine which function was called.
    +// ---------------------------------------------------------------------------
    +
    +#[contract]
    +pub struct Contract;
    +
    +/// Inherent function — returns 1.
    +impl Contract {
    +    pub fn value(_env: Env) -> u32 {
    +        1
    +    }
    +}
    +
    +pub trait ContractTrait {
    +    fn value(env: Env) -> u32;
    +}
    +
    +/// Trait implementation — returns 2.
    +/// The macro-generated WASM export for "value" MUST call this version.
    +#[contractimpl]
    +impl ContractTrait for Contract {
    +    fn value(_env: Env) -> u32 {
    +        2
    +    }
    +}
    +
    +/// The exported `value` entry point must call the trait function, which
    +/// returns 2.
    +#[test]
    +fn calls_trait_fn() {
    +    let e = Env::default();
    +    let contract_id = e.register(Contract, ());
    +    let client = ContractClient::new(&e, &contract_id);
    +
    +    let result = client.value();
    +
    +    assert_eq!(result, 2);
    +}
    
  • soroban-sdk/src/tests.rs+1 0 modified
    @@ -28,6 +28,7 @@ mod contract_udt_enum_option;
     mod contract_udt_option;
     mod contract_udt_struct;
     mod contract_udt_struct_tuple;
    +mod contractimpl_trait_call_resolution;
     mod contractimport;
     mod contractimport_with_error;
     mod cost_estimate;
    
  • soroban-sdk/test_snapshots/tests/contractimpl_trait_call_resolution/calls_trait_fn.1.json+61 0 added
    @@ -0,0 +1,61 @@
    +{
    +  "generators": {
    +    "address": 1,
    +    "nonce": 0,
    +    "mux_id": 0
    +  },
    +  "auth": [
    +    [],
    +    []
    +  ],
    +  "ledger": {
    +    "protocol_version": 25,
    +    "sequence_number": 0,
    +    "timestamp": 0,
    +    "network_id": "0000000000000000000000000000000000000000000000000000000000000000",
    +    "base_reserve": 0,
    +    "min_persistent_entry_ttl": 4096,
    +    "min_temp_entry_ttl": 16,
    +    "max_entry_ttl": 6312000,
    +    "ledger_entries": [
    +      {
    +        "entry": {
    +          "last_modified_ledger_seq": 0,
    +          "data": {
    +            "contract_data": {
    +              "ext": "v0",
    +              "contract": "CAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD2KM",
    +              "key": "ledger_key_contract_instance",
    +              "durability": "persistent",
    +              "val": {
    +                "contract_instance": {
    +                  "executable": {
    +                    "wasm": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"
    +                  },
    +                  "storage": null
    +                }
    +              }
    +            }
    +          },
    +          "ext": "v0"
    +        },
    +        "live_until": 4095
    +      },
    +      {
    +        "entry": {
    +          "last_modified_ledger_seq": 0,
    +          "data": {
    +            "contract_code": {
    +              "ext": "v0",
    +              "hash": "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
    +              "code": ""
    +            }
    +          },
    +          "ext": "v0"
    +        },
    +        "live_until": 4095
    +      }
    +    ]
    +  },
    +  "events": []
    +}
    \ No newline at end of file
    
  • tests-expanded/test_account_tests.rs+1 2 modified
    @@ -344,13 +344,12 @@ pub fn __Contract____check_auth__invoke_raw(
         arg_1: soroban_sdk::Val,
         arg_2: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use CustomAccountInterface;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::__check_auth(
    +        &<Contract as CustomAccountInterface>::__check_auth(
                 env.clone(),
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
    
  • tests-expanded/test_account_wasm32v1-none.rs+1 2 modified
    @@ -234,13 +234,12 @@ pub fn __Contract____check_auth__invoke_raw(
         arg_1: soroban_sdk::Val,
         arg_2: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use CustomAccountInterface;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::__check_auth(
    +        &<Contract as CustomAccountInterface>::__check_auth(
                 env.clone(),
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
    
  • tests-expanded/test_associated_types_contracttrait_tests.rs+2 4 modified
    @@ -350,10 +350,9 @@ impl ContractArgs {}
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).exec` instead")]
     pub fn __Contract__exec__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use Trait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::exec(&env),
    +        &<Contract as Trait>::exec(&env),
             &env,
         )
     }
    @@ -661,10 +660,9 @@ impl ContractArgs {
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).exec2` instead")]
     pub fn __Contract__exec2__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use TraitWithoutContractTrait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::exec2(&env),
    +        &<Contract as TraitWithoutContractTrait>::exec2(&env),
             &env,
         )
     }
    
  • tests-expanded/test_associated_types_contracttrait_wasm32v1-none.rs+2 4 modified
    @@ -118,10 +118,9 @@ impl ContractArgs {}
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).exec` instead")]
     pub fn __Contract__exec__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use Trait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::exec(&env),
    +        &<Contract as Trait>::exec(&env),
             &env,
         )
     }
    @@ -273,10 +272,9 @@ impl ContractArgs {
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).exec2` instead")]
     pub fn __Contract__exec2__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use TraitWithoutContractTrait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::exec2(&env),
    +        &<Contract as TraitWithoutContractTrait>::exec2(&env),
             &env,
         )
     }
    
  • tests-expanded/test_associated_types_tests.rs+1 2 modified
    @@ -261,10 +261,9 @@ impl ContractArgs {
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).exec` instead")]
     pub fn __Contract__exec__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use Trait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::exec(&env),
    +        &<Contract as Trait>::exec(&env),
             &env,
         )
     }
    
  • tests-expanded/test_associated_types_wasm32v1-none.rs+1 2 modified
    @@ -107,10 +107,9 @@ impl ContractArgs {
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).exec` instead")]
     pub fn __Contract__exec__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use Trait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::exec(&env),
    +        &<Contract as Trait>::exec(&env),
             &env,
         )
     }
    
  • tests-expanded/test_contracttrait_impl_full_tests.rs+22 44 modified
    @@ -153,13 +153,12 @@ pub fn __Contract__test_u32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u32(
    +        &<Contract as AllTypes>::test_u32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -210,13 +209,12 @@ pub fn __Contract__test_i32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i32(
    +        &<Contract as AllTypes>::test_i32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -264,13 +262,12 @@ pub fn __Contract__test_u64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u64(
    +        &<Contract as AllTypes>::test_u64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -316,13 +313,12 @@ pub fn __Contract__test_i64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i64(
    +        &<Contract as AllTypes>::test_i64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -368,13 +364,12 @@ pub fn __Contract__test_u128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u128(
    +        &<Contract as AllTypes>::test_u128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -420,13 +415,12 @@ pub fn __Contract__test_i128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i128(
    +        &<Contract as AllTypes>::test_i128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -472,13 +466,12 @@ pub fn __Contract__test_bool__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bool(
    +        &<Contract as AllTypes>::test_bool(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -524,13 +517,12 @@ pub fn __Contract__test_address__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_address(
    +        &<Contract as AllTypes>::test_address(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -576,13 +568,12 @@ pub fn __Contract__test_bytes__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bytes(
    +        &<Contract as AllTypes>::test_bytes(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -628,13 +619,12 @@ pub fn __Contract__test_bytes_n__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bytes_n(
    +        &<Contract as AllTypes>::test_bytes_n(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -680,13 +670,12 @@ pub fn __Contract__test_string__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_string(
    +        &<Contract as AllTypes>::test_string(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -732,13 +721,12 @@ pub fn __Contract__test_symbol__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_symbol(
    +        &<Contract as AllTypes>::test_symbol(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -784,13 +772,12 @@ pub fn __Contract__test_vec__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_vec(
    +        &<Contract as AllTypes>::test_vec(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -836,13 +823,12 @@ pub fn __Contract__test_map__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_map(
    +        &<Contract as AllTypes>::test_map(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -888,13 +874,12 @@ pub fn __Contract__test_duration__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_duration(
    +        &<Contract as AllTypes>::test_duration(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -940,13 +925,12 @@ pub fn __Contract__test_timepoint__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_timepoint(
    +        &<Contract as AllTypes>::test_timepoint(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -992,13 +976,12 @@ pub fn __Contract__test_i256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i256(
    +        &<Contract as AllTypes>::test_i256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1044,13 +1027,12 @@ pub fn __Contract__test_u256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u256(
    +        &<Contract as AllTypes>::test_u256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1093,10 +1075,9 @@ pub extern "C" fn __Contract__test_u256__invoke_raw_extern(
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).test_env_param` instead")]
     pub fn __Contract__test_env_param__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_env_param(&env),
    +        &<Contract as AllTypes>::test_env_param(&env),
             &env,
         )
     }
    @@ -1133,13 +1114,12 @@ pub fn __Contract__test_struct__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_struct(
    +        &<Contract as AllTypes>::test_struct(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1185,13 +1165,12 @@ pub fn __Contract__test_enum_unit__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_enum_unit(
    +        &<Contract as AllTypes>::test_enum_unit(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1237,13 +1216,12 @@ pub fn __Contract__test_enum_variants__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_enum_variants(
    +        &<Contract as AllTypes>::test_enum_variants(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    
  • tests-expanded/test_contracttrait_impl_full_wasm32v1-none.rs+22 44 modified
    @@ -41,13 +41,12 @@ pub fn __Contract__test_u32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u32(
    +        &<Contract as AllTypes>::test_u32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -78,13 +77,12 @@ pub fn __Contract__test_i32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i32(
    +        &<Contract as AllTypes>::test_i32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -113,13 +111,12 @@ pub fn __Contract__test_u64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u64(
    +        &<Contract as AllTypes>::test_u64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -147,13 +144,12 @@ pub fn __Contract__test_i64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i64(
    +        &<Contract as AllTypes>::test_i64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -181,13 +177,12 @@ pub fn __Contract__test_u128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u128(
    +        &<Contract as AllTypes>::test_u128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -215,13 +210,12 @@ pub fn __Contract__test_i128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i128(
    +        &<Contract as AllTypes>::test_i128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -249,13 +243,12 @@ pub fn __Contract__test_bool__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bool(
    +        &<Contract as AllTypes>::test_bool(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -283,13 +276,12 @@ pub fn __Contract__test_address__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_address(
    +        &<Contract as AllTypes>::test_address(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -317,13 +309,12 @@ pub fn __Contract__test_bytes__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bytes(
    +        &<Contract as AllTypes>::test_bytes(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -351,13 +342,12 @@ pub fn __Contract__test_bytes_n__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bytes_n(
    +        &<Contract as AllTypes>::test_bytes_n(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -385,13 +375,12 @@ pub fn __Contract__test_string__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_string(
    +        &<Contract as AllTypes>::test_string(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -419,13 +408,12 @@ pub fn __Contract__test_symbol__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_symbol(
    +        &<Contract as AllTypes>::test_symbol(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -453,13 +441,12 @@ pub fn __Contract__test_vec__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_vec(
    +        &<Contract as AllTypes>::test_vec(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -487,13 +474,12 @@ pub fn __Contract__test_map__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_map(
    +        &<Contract as AllTypes>::test_map(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -521,13 +507,12 @@ pub fn __Contract__test_duration__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_duration(
    +        &<Contract as AllTypes>::test_duration(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -555,13 +540,12 @@ pub fn __Contract__test_timepoint__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_timepoint(
    +        &<Contract as AllTypes>::test_timepoint(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -589,13 +573,12 @@ pub fn __Contract__test_i256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i256(
    +        &<Contract as AllTypes>::test_i256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -623,13 +606,12 @@ pub fn __Contract__test_u256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u256(
    +        &<Contract as AllTypes>::test_u256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -654,10 +636,9 @@ pub extern "C" fn __Contract__test_u256__invoke_raw_extern(
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).test_env_param` instead")]
     pub fn __Contract__test_env_param__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_env_param(&env),
    +        &<Contract as AllTypes>::test_env_param(&env),
             &env,
         )
     }
    @@ -676,13 +657,12 @@ pub fn __Contract__test_struct__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_struct(
    +        &<Contract as AllTypes>::test_struct(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -710,13 +690,12 @@ pub fn __Contract__test_enum_unit__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_enum_unit(
    +        &<Contract as AllTypes>::test_enum_unit(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -744,13 +723,12 @@ pub fn __Contract__test_enum_variants__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_enum_variants(
    +        &<Contract as AllTypes>::test_enum_variants(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    
  • tests-expanded/test_contracttrait_impl_partial_tests.rs+22 44 modified
    @@ -531,13 +531,12 @@ pub fn __Contract__test_u32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u32(
    +        &<Contract as AllTypes>::test_u32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -583,13 +582,12 @@ pub fn __Contract__test_string__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_string(
    +        &<Contract as AllTypes>::test_string(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -632,10 +630,9 @@ pub extern "C" fn __Contract__test_string__invoke_raw_extern(
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).test_env_param` instead")]
     pub fn __Contract__test_env_param__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_env_param(&env),
    +        &<Contract as AllTypes>::test_env_param(&env),
             &env,
         )
     }
    @@ -672,13 +669,12 @@ pub fn __Contract__test_struct__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_struct(
    +        &<Contract as AllTypes>::test_struct(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -725,13 +721,12 @@ pub fn __Contract__test_i32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i32(
    +        &<Contract as AllTypes>::test_i32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -779,13 +774,12 @@ pub fn __Contract__test_u64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u64(
    +        &<Contract as AllTypes>::test_u64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -831,13 +825,12 @@ pub fn __Contract__test_i64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i64(
    +        &<Contract as AllTypes>::test_i64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -883,13 +876,12 @@ pub fn __Contract__test_u128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u128(
    +        &<Contract as AllTypes>::test_u128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -935,13 +927,12 @@ pub fn __Contract__test_i128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i128(
    +        &<Contract as AllTypes>::test_i128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -987,13 +978,12 @@ pub fn __Contract__test_bool__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bool(
    +        &<Contract as AllTypes>::test_bool(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1039,13 +1029,12 @@ pub fn __Contract__test_address__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_address(
    +        &<Contract as AllTypes>::test_address(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1091,13 +1080,12 @@ pub fn __Contract__test_bytes__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bytes(
    +        &<Contract as AllTypes>::test_bytes(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1143,13 +1131,12 @@ pub fn __Contract__test_bytes_n__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bytes_n(
    +        &<Contract as AllTypes>::test_bytes_n(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1195,13 +1182,12 @@ pub fn __Contract__test_symbol__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_symbol(
    +        &<Contract as AllTypes>::test_symbol(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1247,13 +1233,12 @@ pub fn __Contract__test_vec__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_vec(
    +        &<Contract as AllTypes>::test_vec(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1299,13 +1284,12 @@ pub fn __Contract__test_map__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_map(
    +        &<Contract as AllTypes>::test_map(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1351,13 +1335,12 @@ pub fn __Contract__test_duration__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_duration(
    +        &<Contract as AllTypes>::test_duration(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1403,13 +1386,12 @@ pub fn __Contract__test_timepoint__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_timepoint(
    +        &<Contract as AllTypes>::test_timepoint(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1455,13 +1437,12 @@ pub fn __Contract__test_i256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i256(
    +        &<Contract as AllTypes>::test_i256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1507,13 +1488,12 @@ pub fn __Contract__test_u256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u256(
    +        &<Contract as AllTypes>::test_u256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1559,13 +1539,12 @@ pub fn __Contract__test_enum_unit__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_enum_unit(
    +        &<Contract as AllTypes>::test_enum_unit(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1611,13 +1590,12 @@ pub fn __Contract__test_enum_variants__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_enum_variants(
    +        &<Contract as AllTypes>::test_enum_variants(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    
  • tests-expanded/test_contracttrait_impl_partial_wasm32v1-none.rs+22 44 modified
    @@ -251,13 +251,12 @@ pub fn __Contract__test_u32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u32(
    +        &<Contract as AllTypes>::test_u32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -285,13 +284,12 @@ pub fn __Contract__test_string__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_string(
    +        &<Contract as AllTypes>::test_string(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -316,10 +314,9 @@ pub extern "C" fn __Contract__test_string__invoke_raw_extern(
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).test_env_param` instead")]
     pub fn __Contract__test_env_param__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_env_param(&env),
    +        &<Contract as AllTypes>::test_env_param(&env),
             &env,
         )
     }
    @@ -338,13 +335,12 @@ pub fn __Contract__test_struct__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_struct(
    +        &<Contract as AllTypes>::test_struct(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -373,13 +369,12 @@ pub fn __Contract__test_i32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i32(
    +        &<Contract as AllTypes>::test_i32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -408,13 +403,12 @@ pub fn __Contract__test_u64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u64(
    +        &<Contract as AllTypes>::test_u64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -442,13 +436,12 @@ pub fn __Contract__test_i64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i64(
    +        &<Contract as AllTypes>::test_i64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -476,13 +469,12 @@ pub fn __Contract__test_u128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u128(
    +        &<Contract as AllTypes>::test_u128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -510,13 +502,12 @@ pub fn __Contract__test_i128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i128(
    +        &<Contract as AllTypes>::test_i128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -544,13 +535,12 @@ pub fn __Contract__test_bool__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bool(
    +        &<Contract as AllTypes>::test_bool(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -578,13 +568,12 @@ pub fn __Contract__test_address__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_address(
    +        &<Contract as AllTypes>::test_address(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -612,13 +601,12 @@ pub fn __Contract__test_bytes__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bytes(
    +        &<Contract as AllTypes>::test_bytes(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -646,13 +634,12 @@ pub fn __Contract__test_bytes_n__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_bytes_n(
    +        &<Contract as AllTypes>::test_bytes_n(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -680,13 +667,12 @@ pub fn __Contract__test_symbol__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_symbol(
    +        &<Contract as AllTypes>::test_symbol(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -714,13 +700,12 @@ pub fn __Contract__test_vec__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_vec(
    +        &<Contract as AllTypes>::test_vec(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -748,13 +733,12 @@ pub fn __Contract__test_map__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_map(
    +        &<Contract as AllTypes>::test_map(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -782,13 +766,12 @@ pub fn __Contract__test_duration__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_duration(
    +        &<Contract as AllTypes>::test_duration(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -816,13 +799,12 @@ pub fn __Contract__test_timepoint__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_timepoint(
    +        &<Contract as AllTypes>::test_timepoint(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -850,13 +832,12 @@ pub fn __Contract__test_i256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_i256(
    +        &<Contract as AllTypes>::test_i256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -884,13 +865,12 @@ pub fn __Contract__test_u256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_u256(
    +        &<Contract as AllTypes>::test_u256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -918,13 +898,12 @@ pub fn __Contract__test_enum_unit__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_enum_unit(
    +        &<Contract as AllTypes>::test_enum_unit(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -952,13 +931,12 @@ pub fn __Contract__test_enum_variants__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::test_enum_variants(
    +        &<Contract as AllTypes>::test_enum_variants(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    
  • tests-expanded/test_contracttrait_path_crate_tests.rs+1 2 modified
    @@ -340,10 +340,9 @@ impl ContractCratePathArgs {}
     pub fn __ContractCratePath__crate_path_method__invoke_raw(
         env: soroban_sdk::Env,
     ) -> soroban_sdk::Val {
    -    use crate::traits::CratePathTrait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<ContractCratePath>::crate_path_method(&env),
    +        &<ContractCratePath as crate::traits::CratePathTrait>::crate_path_method(&env),
             &env,
         )
     }
    
  • tests-expanded/test_contracttrait_path_crate_wasm32v1-none.rs+1 2 modified
    @@ -108,10 +108,9 @@ impl ContractCratePathArgs {}
     pub fn __ContractCratePath__crate_path_method__invoke_raw(
         env: soroban_sdk::Env,
     ) -> soroban_sdk::Val {
    -    use crate::traits::CratePathTrait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<ContractCratePath>::crate_path_method(&env),
    +        &<ContractCratePath as crate::traits::CratePathTrait>::crate_path_method(&env),
             &env,
         )
     }
    
  • tests-expanded/test_contracttrait_path_global_tests.rs+22 44 modified
    @@ -153,13 +153,12 @@ pub fn __ContractGlobalPath__test_u32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_u32(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_u32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -210,13 +209,12 @@ pub fn __ContractGlobalPath__test_i32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_i32(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_i32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -264,13 +262,12 @@ pub fn __ContractGlobalPath__test_u64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_u64(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_u64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -316,13 +313,12 @@ pub fn __ContractGlobalPath__test_i64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_i64(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_i64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -368,13 +364,12 @@ pub fn __ContractGlobalPath__test_u128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_u128(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_u128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -420,13 +415,12 @@ pub fn __ContractGlobalPath__test_i128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_i128(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_i128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -472,13 +466,12 @@ pub fn __ContractGlobalPath__test_bool__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_bool(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_bool(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -524,13 +517,12 @@ pub fn __ContractGlobalPath__test_address__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_address(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_address(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -576,13 +568,12 @@ pub fn __ContractGlobalPath__test_bytes__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_bytes(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_bytes(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -628,13 +619,12 @@ pub fn __ContractGlobalPath__test_bytes_n__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_bytes_n(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_bytes_n(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -680,13 +670,12 @@ pub fn __ContractGlobalPath__test_string__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_string(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_string(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -732,13 +721,12 @@ pub fn __ContractGlobalPath__test_symbol__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_symbol(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_symbol(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -784,13 +772,12 @@ pub fn __ContractGlobalPath__test_vec__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_vec(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_vec(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -836,13 +823,12 @@ pub fn __ContractGlobalPath__test_map__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_map(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_map(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -890,13 +876,12 @@ pub fn __ContractGlobalPath__test_duration__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_duration(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_duration(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -948,13 +933,12 @@ pub fn __ContractGlobalPath__test_timepoint__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_timepoint(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_timepoint(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1004,13 +988,12 @@ pub fn __ContractGlobalPath__test_i256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_i256(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_i256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1056,13 +1039,12 @@ pub fn __ContractGlobalPath__test_u256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_u256(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_u256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1107,10 +1089,9 @@ pub extern "C" fn __ContractGlobalPath__test_u256__invoke_raw_extern(
         note = "use `ContractGlobalPathClient::new(&env, &contract_id).test_env_param` instead"
     )]
     pub fn __ContractGlobalPath__test_env_param__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_env_param(&env),
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_env_param(&env),
             &env,
         )
     }
    @@ -1151,13 +1132,12 @@ pub fn __ContractGlobalPath__test_struct__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_struct(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_struct(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1205,13 +1185,12 @@ pub fn __ContractGlobalPath__test_enum_unit__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_enum_unit(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_enum_unit(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -1263,13 +1242,12 @@ pub fn __ContractGlobalPath__test_enum_variants__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_enum_variants(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_enum_variants(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    
  • tests-expanded/test_contracttrait_path_global_wasm32v1-none.rs+22 44 modified
    @@ -41,13 +41,12 @@ pub fn __ContractGlobalPath__test_u32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_u32(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_u32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -78,13 +77,12 @@ pub fn __ContractGlobalPath__test_i32__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_i32(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_i32(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -113,13 +111,12 @@ pub fn __ContractGlobalPath__test_u64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_u64(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_u64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -147,13 +144,12 @@ pub fn __ContractGlobalPath__test_i64__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_i64(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_i64(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -181,13 +177,12 @@ pub fn __ContractGlobalPath__test_u128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_u128(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_u128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -215,13 +210,12 @@ pub fn __ContractGlobalPath__test_i128__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_i128(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_i128(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -249,13 +243,12 @@ pub fn __ContractGlobalPath__test_bool__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_bool(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_bool(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -283,13 +276,12 @@ pub fn __ContractGlobalPath__test_address__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_address(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_address(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -317,13 +309,12 @@ pub fn __ContractGlobalPath__test_bytes__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_bytes(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_bytes(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -351,13 +342,12 @@ pub fn __ContractGlobalPath__test_bytes_n__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_bytes_n(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_bytes_n(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -385,13 +375,12 @@ pub fn __ContractGlobalPath__test_string__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_string(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_string(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -419,13 +408,12 @@ pub fn __ContractGlobalPath__test_symbol__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_symbol(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_symbol(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -453,13 +441,12 @@ pub fn __ContractGlobalPath__test_vec__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_vec(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_vec(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -487,13 +474,12 @@ pub fn __ContractGlobalPath__test_map__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_map(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_map(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -523,13 +509,12 @@ pub fn __ContractGlobalPath__test_duration__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_duration(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_duration(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -561,13 +546,12 @@ pub fn __ContractGlobalPath__test_timepoint__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_timepoint(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_timepoint(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -597,13 +581,12 @@ pub fn __ContractGlobalPath__test_i256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_i256(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_i256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -631,13 +614,12 @@ pub fn __ContractGlobalPath__test_u256__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_u256(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_u256(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -664,10 +646,9 @@ pub extern "C" fn __ContractGlobalPath__test_u256__invoke_raw_extern(
         note = "use `ContractGlobalPathClient::new(&env, &contract_id).test_env_param` instead"
     )]
     pub fn __ContractGlobalPath__test_env_param__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_env_param(&env),
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_env_param(&env),
             &env,
         )
     }
    @@ -688,13 +669,12 @@ pub fn __ContractGlobalPath__test_struct__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_struct(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_struct(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -724,13 +704,12 @@ pub fn __ContractGlobalPath__test_enum_unit__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_enum_unit(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_enum_unit(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    @@ -762,13 +741,12 @@ pub fn __ContractGlobalPath__test_enum_variants__invoke_raw(
         env: soroban_sdk::Env,
         arg_0: soroban_sdk::Val,
     ) -> soroban_sdk::Val {
    -    use test_contracttrait_trait::AllTypes;
         <_ as soroban_sdk::IntoVal<
             soroban_sdk::Env,
             soroban_sdk::Val,
         >>::into_val(
             #[allow(deprecated)]
    -        &<ContractGlobalPath>::test_enum_variants(
    +        &<ContractGlobalPath as ::test_contracttrait_trait::AllTypes>::test_enum_variants(
                 <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                     <_ as soroban_sdk::TryFromValForContractFn<
                         soroban_sdk::Env,
    
  • tests-expanded/test_contracttrait_path_relative_tests.rs+1 2 modified
    @@ -340,10 +340,9 @@ impl ContractRelativePathArgs {}
     pub fn __ContractRelativePath__relative_path_method__invoke_raw(
         env: soroban_sdk::Env,
     ) -> soroban_sdk::Val {
    -    use traits::RelativePathTrait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<ContractRelativePath>::relative_path_method(&env),
    +        &<ContractRelativePath as traits::RelativePathTrait>::relative_path_method(&env),
             &env,
         )
     }
    
  • tests-expanded/test_contracttrait_path_relative_wasm32v1-none.rs+1 2 modified
    @@ -108,10 +108,9 @@ impl ContractRelativePathArgs {}
     pub fn __ContractRelativePath__relative_path_method__invoke_raw(
         env: soroban_sdk::Env,
     ) -> soroban_sdk::Val {
    -    use traits::RelativePathTrait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<ContractRelativePath>::relative_path_method(&env),
    +        &<ContractRelativePath as traits::RelativePathTrait>::relative_path_method(&env),
             &env,
         )
     }
    
  • tests-expanded/test_contracttrait_path_self_tests.rs+1 2 modified
    @@ -332,10 +332,9 @@ impl ContractSelfPathArgs {}
         note = "use `ContractSelfPathClient::new(&env, &contract_id).self_path_method` instead"
     )]
     pub fn __ContractSelfPath__self_path_method__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use self::SelfPathTrait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<ContractSelfPath>::self_path_method(&env),
    +        &<ContractSelfPath as self::SelfPathTrait>::self_path_method(&env),
             &env,
         )
     }
    
  • tests-expanded/test_contracttrait_path_self_wasm32v1-none.rs+1 2 modified
    @@ -100,10 +100,9 @@ impl ContractSelfPathArgs {}
         note = "use `ContractSelfPathClient::new(&env, &contract_id).self_path_method` instead"
     )]
     pub fn __ContractSelfPath__self_path_method__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use self::SelfPathTrait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<ContractSelfPath>::self_path_method(&env),
    +        &<ContractSelfPath as self::SelfPathTrait>::self_path_method(&env),
             &env,
         )
     }
    
  • tests-expanded/test_contracttrait_path_super_tests.rs+1 2 modified
    @@ -336,10 +336,9 @@ pub mod submodule {
         pub fn __ContractSuperPath__super_path_method__invoke_raw(
             env: soroban_sdk::Env,
         ) -> soroban_sdk::Val {
    -        use super::SuperPathTrait;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<ContractSuperPath>::super_path_method(&env),
    +            &<ContractSuperPath as super::SuperPathTrait>::super_path_method(&env),
                 &env,
             )
         }
    
  • tests-expanded/test_contracttrait_path_super_wasm32v1-none.rs+1 2 modified
    @@ -104,10 +104,9 @@ pub mod submodule {
         pub fn __ContractSuperPath__super_path_method__invoke_raw(
             env: soroban_sdk::Env,
         ) -> soroban_sdk::Val {
    -        use super::SuperPathTrait;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<ContractSuperPath>::super_path_method(&env),
    +            &<ContractSuperPath as super::SuperPathTrait>::super_path_method(&env),
                 &env,
             )
         }
    
  • tests-expanded/test_contracttrait_trait_tests.rs+22 44 modified
    @@ -3508,10 +3508,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_u32(
    +            &<Contract as AllTypes>::test_u32(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -3562,10 +3561,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_i32(
    +            &<Contract as AllTypes>::test_i32(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -3613,10 +3611,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_u64(
    +            &<Contract as AllTypes>::test_u64(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -3662,10 +3659,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_i64(
    +            &<Contract as AllTypes>::test_i64(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -3711,10 +3707,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_u128(
    +            &<Contract as AllTypes>::test_u128(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -3760,10 +3755,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_i128(
    +            &<Contract as AllTypes>::test_i128(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -3809,10 +3803,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_bool(
    +            &<Contract as AllTypes>::test_bool(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -3858,10 +3851,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_address(
    +            &<Contract as AllTypes>::test_address(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -3907,10 +3899,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_bytes(
    +            &<Contract as AllTypes>::test_bytes(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -3956,10 +3947,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_bytes_n(
    +            &<Contract as AllTypes>::test_bytes_n(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4005,10 +3995,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_string(
    +            &<Contract as AllTypes>::test_string(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4054,10 +4043,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_symbol(
    +            &<Contract as AllTypes>::test_symbol(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4103,10 +4091,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_vec(
    +            &<Contract as AllTypes>::test_vec(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4152,10 +4139,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_map(
    +            &<Contract as AllTypes>::test_map(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4201,10 +4187,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_duration(
    +            &<Contract as AllTypes>::test_duration(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4250,10 +4235,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_timepoint(
    +            &<Contract as AllTypes>::test_timepoint(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4299,10 +4283,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_i256(
    +            &<Contract as AllTypes>::test_i256(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4348,10 +4331,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_u256(
    +            &<Contract as AllTypes>::test_u256(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4394,10 +4376,9 @@ mod test {
         #[allow(non_snake_case)]
         #[deprecated(note = "use `ContractClient::new(&env, &contract_id).test_env_param` instead")]
         pub fn __Contract__test_env_param__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_env_param(&env),
    +            &<Contract as AllTypes>::test_env_param(&env),
                 &env,
             )
         }
    @@ -4434,10 +4415,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_struct(
    +            &<Contract as AllTypes>::test_struct(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4483,10 +4463,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_enum_unit(
    +            &<Contract as AllTypes>::test_enum_unit(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    @@ -4532,10 +4511,9 @@ mod test {
             env: soroban_sdk::Env,
             arg_0: soroban_sdk::Val,
         ) -> soroban_sdk::Val {
    -        use AllTypes;
             <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
                 #[allow(deprecated)]
    -            &<Contract>::test_enum_variants(
    +            &<Contract as AllTypes>::test_enum_variants(
                     <_ as soroban_sdk::unwrap::UnwrapOptimized>::unwrap_optimized(
                         <_ as soroban_sdk::TryFromValForContractFn<
                             soroban_sdk::Env,
    
  • tests-expanded/test_multiimpl_tests.rs+1 2 modified
    @@ -579,10 +579,9 @@ impl ContractArgs {
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).empty3` instead")]
     pub fn __Contract__empty3__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use Trait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::empty3(),
    +        &<Contract as Trait>::empty3(),
             &env,
         )
     }
    
  • tests-expanded/test_multiimpl_wasm32v1-none.rs+1 2 modified
    @@ -245,10 +245,9 @@ impl ContractArgs {
     #[allow(non_snake_case)]
     #[deprecated(note = "use `ContractClient::new(&env, &contract_id).empty3` instead")]
     pub fn __Contract__empty3__invoke_raw(env: soroban_sdk::Env) -> soroban_sdk::Val {
    -    use Trait;
         <_ as soroban_sdk::IntoVal<soroban_sdk::Env, soroban_sdk::Val>>::into_val(
             #[allow(deprecated)]
    -        &<Contract>::empty3(),
    +        &<Contract as Trait>::empty3(),
             &env,
         )
     }
    

Vulnerability mechanics

Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

7

News mentions

0

No linked articles in our index yet.