On Fri, Nov 19, 2010 at 6:18 PM, Walter Bright
<[email protected]>wrote:

> Bernard Helyer wrote:
>
>> No. The contents of a version block is still parsed. If the D2 code
>> doesn't _parse_ as valid D1, then the D1 compiler will reject it, even if
>> the version block will not be processed further than that.
>>
>
> Yes. Now, if the D1 compiler is supposed to successfully lex & parse (and
> then ignore) false version blocks, it becomes impossible for a D1 compiler
> to be stable. It will have to track every future D language variant,
> missteps and all.
>

I'm a fan of parsing false version blocks, but it seems like there should be
some sort of exception for version blocks for a different version of the
language. Could they just be skipped with a warning that an unknown version
of the language is in use? It's somewhat hackish, but to me, that seems
better than parsing it and giving an error because of syntax changes.

Reply via email to