A simple proxy contract looks like:
contract Proxy {
function forward(address to, uint value, bytes data) {
if (!to.call.value(value)(data)) {
throw;
}
}
}
Using to zero [like forward(0, 0, data)] doesn't work. Can a proxy contract create an arbitrary contract?
Can this code be modified or what's the Solidity inline assembly to do the job?
CALL,DELEGATECALLorCALLCODEas described here – Micha Roon Jan 10 '17 at 06:59