>"symbols" to a classical linker are just functions and variables. Constants already get tricky.
From what I recall, that's not true. A constant is just an absolute symbol, a variable is a relocatable symbol.
(Based on vague memories of the linkers I used in the mid-1970s, which I think are old enough to be called classical)
>Isn't there something in the classical model where a later .LIB cannot reference an .OBJ in an earlier .LIB?
No, that's just a limitation in some implementations. Not the DEC linkers I used in the mid-1970s.