Comment by ykonstant
10 hours ago
Ifdef soup is still horrible, so those times (which I didn't experience firsthand) must have been abysmal.
10 hours ago
Ifdef soup is still horrible, so those times (which I didn't experience firsthand) must have been abysmal.
If you want to know how bad it can be, only need to take a look at GCC's implementation of `stddef.h` for `size_t` and `ptrdiff_t` etc.
https://github.com/gcc-mirror/gcc/blob/master/gcc/ginclude/s...
There's a simpler way to define these types in newer versions of C which have `typeof`, we can take advantage of the fact that `sizeof()` always returns a `size_t`, `ptr - ptr` always returns a `ptrdiff_t`, and a literal L'c' has type `wchar_t`, etc.
Don't need ifdef soup to test what the sizes of things are on different architectures - we just utilize the compiler's implementation of those types.
Traditionally your compiler supported one type of computer and just defined them to what they were on that computer.