contract C { bytes data; function f() public returns (uint ret) { data.push("a"); data.push("b"); delete data; assembly { ret := sload(data.slot) } } function g() public returns (uint ret) { assembly { sstore(data.slot, 67) } data.push("a"); data.push("b"); assert(data.length == 35); delete data; assert(data.length == 0); uint size = 999; assembly { size := sload(data.slot) mstore(0, data.slot) ret := sload(keccak256(0, 32)) } assert(size == 0); } } // ==== // compileViaYul: also // ---- // f() -> 0 // g() -> 0