4 ms·
Fe currently doesn't support the offending type and I'm pretty sure the rest of the types support the same names internally. Smart contact development isn't lik
by davesque 5y ago
Fe currently doesn't support the offending type and I'm pretty sure the rest of the types support the same names internally. Smart contact development isn't like native systems programming where the details of the ABI are not considered in the majority of work. I think any smart contact engineer worth their salt will immediately ask what hash will be generated by a given type and confirm that it's compatible with standard contract interfaces.
- mgraczyk 5y agoYeah looking at elements.rs, it appears that they have the translation layer I alluded to: https://github.com/ethereum/fe/blob/bfeffe82b4f8623330c1ebb1950ca981449c9e86/crates/abi/src/elements.rs#L95 https://github.com/ethereum/fe/blob/bfeffe82b4f8623330c1ebb1... It's not obvious to me though and I couldn't find documentation for ABI compatibility. For example, does delegatecall to solidity work? That requires that Fe also use the same "binary" layout for storage in which slot index is used to generate the storage hash: https://docs.soliditylang.org/en/v0.8.10/internals/layout_in_storage.html https://docs.soliditylang.org/en/v0.8.10/internals/layout_in...