Sounds like something fixed by a transpiler ecosystem like JavaScript has. Babel to translate to older language versions, Web pack to make everything tiny, etc. A bunch of fancy / trendy libraries like React and Angular, stories of Ye Olden frameworks like JQuery, and 


There are likely all sorts of problems with doing it, like how it behaves in #if...
-
-
It worked great! The only major issue was the formal semantics issues around extended types and intmax, as you sketched out.
-
But preprocessor requires all arithmetic take place in a common signed or unsigned type matching [u]intmax_t...
-
As I said, the only real issue is around intmax.
-
Even without stdint.h and intmax_t, though, you'd run into the same problem with consistently defining what's supposed to happen at the preprocessor level...
-
Yes. It breaks a whole mess of formal rules, but almost no real code is affected.
-
Clearly some of us do more awful things with the preprocessor than others... ;-)
-
I inserted the "almost" just for you.
-
See http://git.musl-libc.org/cgit/musl/tree/include/limits.h?id=v1.1.19#n10 …, which depends on I-think-likely-wrong behavior by gcc and other compilers of treating char constants as uintmax_t rather than intmax_t if char is unsigned.
- 8 more replies
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.
