EIP-1702: Generalized Account Versioning Scheme (#10771)
* EIP-1702: Generalized Account Versioning Scheme * Fix pWASM's `create` and `create2` contract creation version * Update ethcore/src/snapshot/account.rs Co-Authored-By: Andronik Ordian <write@reusable.software> * Update ethcore/src/factory.rs Co-Authored-By: Andronik Ordian <write@reusable.software> * Add pWasm frontend config * Add snapshot testing with version * Fix merge conflict
This commit is contained in:
@@ -25,6 +25,7 @@ pub struct RuntimeContext {
|
||||
pub sender: Address,
|
||||
pub origin: Address,
|
||||
pub code_address: Address,
|
||||
pub code_version: U256,
|
||||
pub value: U256,
|
||||
}
|
||||
|
||||
@@ -529,7 +530,7 @@ impl<'a> Runtime<'a> {
|
||||
* U256::from(self.ext.schedule().wasm().opcodes_mul)
|
||||
/ U256::from(self.ext.schedule().wasm().opcodes_div);
|
||||
|
||||
match self.ext.create(&gas_left, &endowment, &code, scheme, false).ok().expect("Trap is false; trap error will not happen; qed") {
|
||||
match self.ext.create(&gas_left, &endowment, &code, &self.context.code_version, scheme, false).ok().expect("Trap is false; trap error will not happen; qed") {
|
||||
vm::ContractCreateResult::Created(address, gas_left) => {
|
||||
self.memory.set(result_ptr, address.as_bytes())?;
|
||||
self.gas_counter = self.gas_limit -
|
||||
|
||||
Reference in New Issue
Block a user