That's right, And even putting aside the preprocessor, prior to C89, C was a mess portability-wise. (Actually, even after C89, portability was still frustrated by the problem of the varying size of ints.) Ritchie designed C to get above the assembly level so that portability would be possible. But it was certainly not attained until much later.