I've got a (rather large) contract that compiles to a larger bytecode than it used to. After a binary search using the binaries in https://github.com/ethereum/solc-bin , the change appears to have occurred between v0.3.5-2016-07-21-6610add and v0.3.5-2016-08-03-3b21d98, where the bytecode has gone from 14972 bytes to 15384 bytes.
Is there a reason to expect this behaviour? And if I can't find a smaller working example, is there a way I can narrow the window to look in to find out what's happened?
Yes, it is expected behaviour. We disabled the optimizer in some situations because it produced faulty code. We are planning to add a new optimizer stage that should reduce the size again.
Would be nice to document this in the release
Right, thanks for the tip, just did that :-)
Most helpful comment
Right, thanks for the tip, just did that :-)