[csswg-drafts] [css-syntax] "Consume a declaration" (5.5.6) leaves out a final "else" condition? (#10353)

amn has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-syntax] "Consume a declaration" (5.5.6) leaves out a final "else" condition? ==
Under list of steps described by [5.5.6 "Consume a declaration"](http://drafts.csswg.org/css-syntax/#consume-declaration), point 8 says:

> If decl’s name is a [custom property name string](https://drafts.css-houdini.org/css-typed-om-1/#custom-property-name-string), then set decl’s original text to the segment of the original source text string corresponding to the tokens of decl’s value.
>
> **Otherwise**, if decl’s value contains a top-level [simple block](https://drafts.csswg.org/css-syntax/#simple-block) with an associated token of [<{-token>](https://drafts.csswg.org/css-syntax/#tokendef-open-curly), and also contains any other non-[<whitespace-token>](https://drafts.csswg.org/css-syntax/#typedef-whitespace-token) value, return nothing. (That is, a top-level {}-block is only allowed as the entire value of a non-custom property.)
>
> **Otherwise**, if decl’s name is an [ASCII case-insensitive](https://infra.spec.whatwg.org/#ascii-case-insensitive) match for "unicode-range", [consume the value of a unicode-range descriptor](https://drafts.csswg.org/css-syntax/#consume-the-value-of-a-unicode-range-descriptor) from the segment of the original source text string corresponding to the tokens returned by the [consume a list of component values](https://drafts.csswg.org/css-syntax/#consume-a-list-of-component-values) call, and replace decl’s value with the result.

The issue is that there's two "otherwise" there (emphasis mine), both of which are conditional, meaning -- in plain language -- what if a declaration's name is _not_ [an ASCII case-insensitive match] for "unicode-range"? What should a compliant parser do then? It's effectively a case of a missing "fallthrough" (default) behaviour specification, the way I see it. An omission of sorts?

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/10353 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Monday, 20 May 2024 12:12:49 UTC