Skip to content

Investigate where we enforce the call stack limit #1119

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.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

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