Hacker News new | ask | show | jobs
by mjs01 36 days ago
Integer promotion seems to be the source of many signed integer overflow UB. Why does C have it? Does integer promotion ever have a good part?
1 comments

Yes, it simplifies a lot of code that would otherwise be littered with casts.
Could be fixed by having a nicer casting syntax (like Rust) or by not having so damn many scalar types that are used in practice.

"Explicit casts only" worked fine in Modula-2, which doesn't have as many scalar types.

Yeah most modern languages settle on having fewer types that are used most of the time and don't require as many casts.