[css-syntax] 4.3.11. Consume a name?

The specification reads:

``Repeatedly consume the next input code point from the stream:''

And whenever the code point does not match the two clauses mentioned below,

``anything else
    Return result.''

I believe that this description wrong. The current code point should be reconsumed, before returning the result, and preventing that a non-matching symbol from the input stream is eaten by the algorithm. A counter-example:

#ident{
}

would then first consume the "#", which triggers the `Consume a name'-algorithm. It then continues with the `name code point'-path, all the way up to "{". Here it returns result, while "{" is still consumed.

If I may suggest a better wording, it would be:

``anything else
    Reconsume the current input code point and return result.''

See:
http://www.w3.org/TR/css-syntax-3/#reconsume-the-current-input-code-point
http://www.w3.org/TR/css-syntax-3/#consume-a-name

Received on Monday, 7 December 2015 13:04:55 UTC