@@ -62,6 +62,7 @@ mod error_invalid_opcode;
6262mod error_oog_call;
6363mod error_oog_log;
6464mod error_oog_sload_sstore;
65+ mod error_precompile_failed;
6566mod error_stack_oog_constant;
6667
6768#[ cfg( test) ]
@@ -86,6 +87,7 @@ use error_invalid_opcode::InvalidOpcode;
8687use error_oog_call:: OOGCall ;
8788use error_oog_log:: ErrorOOGLog ;
8889use error_oog_sload_sstore:: OOGSloadSstore ;
90+ use error_precompile_failed:: PrecompileFailed ;
8991use error_stack_oog_constant:: ErrorStackOogConstant ;
9092use exp:: Exponentiation ;
9193use extcodecopy:: Extcodecopy ;
@@ -274,6 +276,7 @@ fn fn_gen_error_state_associated_ops(error: &ExecError) -> Option<FnGenAssociate
274276 ExecError :: StackUnderflow => Some ( ErrorStackOogConstant :: gen_associated_ops) ,
275277 // call & callcode can encounter InsufficientBalance error, Use pop-7 generic CallOpcode
276278 ExecError :: InsufficientBalance => Some ( CallOpcode :: < 7 > :: gen_associated_ops) ,
279+ ExecError :: PrecompileFailed => Some ( PrecompileFailed :: gen_associated_ops) ,
277280
278281 // more future errors place here
279282 _ => {
@@ -637,6 +640,7 @@ pub fn gen_end_tx_ops(state: &mut CircuitInputStateRef) -> Result<ExecStep, Erro
637640 let effective_tip = state. tx . gas_price - block_info. base_fee ;
638641 let ( found, coinbase_account) = state. sdb . get_account_mut ( & block_info. coinbase ) ;
639642 if !found {
643+ log:: error!( "coinbase account not found: {}" , block_info. coinbase) ;
640644 return Err ( Error :: AccountNotFound ( block_info. coinbase ) ) ;
641645 }
642646 let coinbase_balance_prev = coinbase_account. balance ;
0 commit comments