Skip to content

Investigate where we enforce the call stack limit #1119

@SamWilsn

Description

@SamWilsn

It looks like we might enforce it in multiple places:

if evm.message.depth + Uint(1) > STACK_DEPTH_LIMIT:
evm.gas_left += gas
push(evm.stack, U256(0))
return

And later:

if message.depth > STACK_DEPTH_LIMIT:
raise StackDepthLimitError("Stack depth limit reached")

One of these (interpreter.py) might be better suited as an assertion to catch bugs.

Metadata

Metadata

Assignees

Labels

A-spec-specsArea: Specification—The Ethereum specification itself (eg. `src/ethereum/*`)C-featCategory: an improvement or new featureE-easyExperience: easy, good for newcomersP-highstaleThe Issue/PR has not had any activity for 60 days. PRs will be automatically closed.

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions