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-high

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions