News for hackers. Stuff that matters.
Re:Compiler Bug Causes Compiler Bug: How a 12-Year-Old G++ B... by charcircuit on Friday August 15, 2025 @03:09PM (#44916321)
You can fix smart contracts without a hard fork. In fact it's common practice for them to be upgradable.
Re:Compiler Bug Causes Compiler Bug: How a 12-Year-Old G++ B... by saghm on Friday August 15, 2025 @04:00PM (#44916731)
Does it fix them only going forward, or does it actually update what happened in previous transactions retroactively? If the latter, does everyone involved with any transactions using the said contract have a say in whether the upgrade occurs? I'm skeptical that this would actually be a good mechanism in general given how likely it seems that some contracts might be so widely used to essentially require a hard fork in order to upgrade retroactively, but I'm open to the idea that I might be missing something here.
Re:Compiler Bug Causes Compiler Bug: How a 12-Year-Old G++ B... by charcircuit on Friday August 15, 2025 @04:39PM (#44917018)
It only updates the code that will run. Fixing it going forward. To protect oneself against losses due to bugs people can use insurance smart contracts.
Re:Compiler Bug Causes Compiler Bug: How a 12-Year-Old G++ B... by saghm on Saturday August 16, 2025 @04:56PM (#44926873)
I guess I'm just skeptical that writing more code to try to protect against code being buggy will result in a system that works better than what we have today. Software with tests written for it still has plenty of bugs, after all.
Re:Compiler Bug Causes Compiler Bug: How a 12-Year-Old G++ B... by charcircuit on Saturday August 16, 2025 @05:01PM (#44926900)
Expecting code to be perfect and code complete the first time around is typically a losing bet.
Re:Compiler Bug Causes Compiler Bug: How a 12-Year-Old G++ B... by saghm on Saturday August 16, 2025 @08:13PM (#44927894)
I completely agree, which is why I don't think that contracts should be expressed in code in the first place. You have to spend a lot of effort up front just to reach parity with contractual systems that don't rely on code, and even if you get to that point, it's not really clear to me what benefits you'd get over what we have today.