Infinite precision intermediate arithmetic: how much would break?
Rust Internals [Unofficial]
June 10, 2026
chrefr:
C has shown that promotion rules are deeply unintuitive and confusing
C has shown that C's promotion rules are confusing.
C is uniquely bad at this with footguns like mixing ints and floats causing silent truncation, vaguely defined platform-specific sizes, changing unsigned to signed with potential UB on top. These are unforced errors that C has, but aren't inherent to the problem space.
I don't support the particular proposal in this thread, but I want to push back against using C as an example, because it leads to wrong conclusions.
Similarly, C++ has shown that references are dangerous, closures are full of footguns, smart pointers have unavoidable overheads, and yet we have robust versions of these things in Rust.
Discussion in the ATmosphere