datanguay@watmath.waterloo.edu (David Adrien Tanguay) (05/02/90)
In article <1640@tkou02.enet.dec.com> diamond@tkou02.enet.dec.com (diamond@tkovoa) writes: >A logical source line means *both* before and after macro expansion. The >limit applies until phase 7. (I also have a letter from Tom Plum, though >not a formal ANSI ruling, that the limit applies after macro expansion.) >Norman Diamond, Nihon DEC diamond@tkou02.enet.dec.com I think this is an incorrect interpretation. The "logical source line" is only mentioned in phase 2, and phase 3 talks about decomposing the input into tokens. Also, note that one of the other translation limits includes 509 characters in a string literal, after concatenation. It would be impossible to construct such a literal with a 509 character limit on the logical source line, if the logical source line definition includes phase 6 (adjacent string concatenation). (You need 2 extra characters for the quotes.) You can probably weasel out of the contradiction (e.g., the compiler recognises a special case, thus passing both limits at once, but in all other cases only accepts 10 characters lines :-(), but I think it shows that the intention is that the logical source line limit does not extend to phase 6. What is your argument for extending it beyond phase 2? David Tanguay