Pete Resnick wrote:
Yup, you're right, but that wasn't intended by 2822. Or more to the
point, it's not obvious to me that it was intended that bare CR or
bare LF should appear in the obs- version of body, which is the result.
OK. This looks like it might need some discussion and non-trivial work
to fix.
As an aside, note that obs-text may consist of multiple octets, so
"\foo" could be considered a
quoted-pair ("foo" matches obs-text via *(obs-char *LF *CR)). I
believe that's a problem with 2822.
I agree that it is a bug.
I think the revised grammar corrects that.
On the other hand, 822 specifically mentioned the multi-character
\CRLF and gave its semantics, but 2822 doesn't seem to permit that.
\CRLF is a quoted pair with CR followed by a bare LF. The current
syntax of 2822 permits that, leaving aside the question of whether or
not it should.
Well, 2822 provides for parsing as described, but as both \CR and lone
LF are obs- constructs,
it does not permit generation. Moreover, the semantics of \CRLF as
given in RFC 822 are quite
different from \CR followed by a lone LF.
If indeed the RFC 822 construct and its semantics are to be deemed
obsolete, there at least ought
to be mention of that fact in the "Differences from Earlier Standards"
appendix. OTOH if it's
to be continued, there ought to be provision for it as a single entity
in the grammar.