Hey guys I have a few questions about delegatecall.
The setup: I have 2 contracts A and B.
A has 2 uint state variables
B has 4 uint state variables
- To ensure storage layout compatibility, B inherits A.
Questions: If A delegatecalls B and updates B's 3rd or 4th state variable:
- Is there a risk that the update will affect/overwrite the wrong memory slot (the inheritance should prevent A's state variable from being overwritten)?
When the updated state is written to disk, will it persist correctly?
Should i worry about different client implementations (Geth, Parity, ganache...)