Re: Malformed declarations incorrectly parsed?

Yves Lafon wrote:
> On Sat, 15 Mar 2008, Benjamin Hawkes-Lewis wrote:
> 
>> Yves Lafon wrote:
>>> The tool is consistent... but it depends on the error case. Lexical 
>>> errors are handled with a skip to matching brace,
>>
>> That doesn't appear to be true.
>>
>> p { color:red; color:; color:green }
>>
>> includes a lexical error since "color:;" cannot be parsed as "property 
>> ':' S* expr prio?" from:
>>
>> http://www.w3.org/TR/CSS21/grammar.html#scanner
>>
>> The validator calls it a "parse error".
>>
>> If what you were saying were true, the validator would skip to the 
>> matching brace, but instead it reports color: green; as valid CSS 
>> information.

[snip]

> I dug a bit more in the code, and found the culprit. while skipStatement 
> was correctly skipping {} blocks, it was not the case for 
> skipAfterExpression (responsible for errors happening when parsing right 
> hand side of <prop> : <value>. Now fixed and in place at:
> 
> http://qa-dev.w3.org:8001/css-validator/

Hmm. I tried this with the very same example and it still extracts:

p {
color : red;
color : green;
}

Does that not happen for you?

--
Benjamin Hawkes-Lewis

Received on Tuesday, 18 March 2008 07:04:53 UTC