Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[css-syntax] problem with consume list of rules #3631

Closed
tabatkins opened this issue Feb 7, 2019 · 0 comments
Closed

[css-syntax] problem with consume list of rules #3631

tabatkins opened this issue Feb 7, 2019 · 0 comments
Labels
Closed Accepted as Obvious Bugfix Commenter Satisfied Commenter has indicated satisfaction with the resolution / edits. css-syntax-3 Testing Unnecessary Memory aid - issue doesn't require tests

Comments

@tabatkins
Copy link
Member

(migrated from mailing list)

Johannes Koch said:

5.4.1. Consume a list of rules

...
<at-keyword-token>
Reconsume the current input token. Consume an at-rule. If anything
is returned, append it to the list of rules.

[Then 5.4.2. Consume an at-rule]

Create a new at-rule with its name set to the value of the current input
token, its prelude initially set to an empty list, and its value
initially set to nothing.

Repeatedly consume the next input token:

[Because of 'Reconsume the current input token' in 5.4.1. the
<at-keyword-token> is still the current input token.]

...
anything else
Reconsume the current input token. Consume a component value.
Append the returned value to the at-rule’s prelude.

[The component value consumed is the <at-keyword-token> and is added to
the prelude.]

The same applies to 5.4.1
anything else

also reconsuming the current input token before consuming a qualified rule.

I think the 'Reconsume the current input token' has to be removed.

Additionally, I don't understand the case
<CDO-token>
<CDC-token>
...
Otherwise, ...

input: <!--foo
creates a prelude with 3 entries:

  1. CDO
  2. CDO
  3. Ident foo

Tab Atkins said:

I think the 'Reconsume the current input token' has to be removed.

Fixed, but in a different way.

input: <!--foo
creates a prelude with 3 entries:

  1. CDO
  2. CDO
  3. Ident foo

I don't understand why this would happen. In any case, it certainly
doesn't happen in the current spec, now that I've fixed the algos.

@tabatkins tabatkins added css-syntax-3 Closed Accepted as Obvious Bugfix Commenter Satisfied Commenter has indicated satisfaction with the resolution / edits. Needs Testcase (WPT) labels Feb 7, 2019
@tabatkins tabatkins added Testing Unnecessary Memory aid - issue doesn't require tests and removed Needs Testcase (WPT) labels Feb 15, 2019
@tabatkins tabatkins added this to the CSS Syntax 3 June 2019 CR milestone Jun 28, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Closed Accepted as Obvious Bugfix Commenter Satisfied Commenter has indicated satisfaction with the resolution / edits. css-syntax-3 Testing Unnecessary Memory aid - issue doesn't require tests
Projects
None yet
Development

No branches or pull requests

1 participant