Description
Databus-style programs trigger a panic during Noir-to-R1CS compilation when they use calldata or returndata block types in memory initialization. Only Memory block type is accepted, which is more restrictive than ACIR's spec.
Details
- Panic location:
noir_to_r1cs.rs#L469
- Opcode:
Opcode::MemoryInit
- ACIR block types:
- Provekit code only accepts:
BlockType::Memory
Impact
Databus-oriented circuits (using calldata/returndata memory semantics) panic during the prepare step in r1cs-compiler.
Error: MemoryInit block type must be Memory
This prevents compiling and proving valid programs leveraging the expanded ACIR memory semantics.
Description
Databus-style programs trigger a panic during Noir-to-R1CS compilation when they use
calldataorreturndatablock types in memory initialization. OnlyMemoryblock type is accepted, which is more restrictive than ACIR's spec.Details
noir_to_r1cs.rs#L469Opcode::MemoryInitMemory,CallData(u32),ReturnDataBlockType::MemoryImpact
Databus-oriented circuits (using
calldata/returndatamemory semantics) panic during thepreparestep inr1cs-compiler.This prevents compiling and proving valid programs leveraging the expanded ACIR memory semantics.