LayerZero-Labs / LayerZero-v2

Other
492 stars 312 forks source link

forge coverage fails to run on OApp #42

Open eugenPtr opened 4 months ago

eugenPtr commented 4 months ago

I am unable to run forge coverage in any foundry project integrating OApp or directly in the library's oapp folder

I get the following "Stack too deep error":

image

Tried running it with the --ir-minimum and --via-ir flags without success.

Taiko managed to fix this by restructuring their data storage layout. I am not sure how easy would be to do this in LayerZero. Source

I believe it's important to be able to generate the coverage report for any dapp integrating LayerZero and I'm wondering what could potentially be a solution to this issue.

jordaniza commented 3 weeks ago

+1 also have this issue

jordaniza commented 3 weeks ago

// import {EndpointV2} from "@layerzerolabs/lz-evm-protocol-v2/contracts/EndpointV2.sol"; // import {SendUln302Mock as SendUln302} from "@lz-oapp-test/mocks/SendUln302Mock.sol"; // import {SimpleMessageLibMock} from "@lz-oapp-test/mocks/SimpleMessageLibMock.sol";

The above 3 libraries all generate compiler errors when trying to run coverage.

jordaniza commented 3 weeks ago

https://github.com/foundry-rs/foundry/issues/3527

This error persists even with --ir-minimum