@@ -103059,12 +103059,14 @@ dictionary <dfn>StorageEventInit</dfn> : <span>EventInit</span> {
103059103059 DOCTYPE, start tag, end tag, comment, character, end-of-file. DOCTYPE tokens have a name, a public
103060103060 identifier, a system identifier, and a <dfn><i>force-quirks flag</i></dfn>. When a DOCTYPE token
103061103061 is created, its name, public identifier, and system identifier must be marked as missing (which is
103062- a distinct state from the empty string), and the <i data-x="force-quirks flag">force-quirks flag</i> must be set to
103063- <i>off</i> (its other state is <i>on</i>). Start and end tag tokens have a tag name, a <dfn
103064- data-x="self-closing flag">self-closing flag</dfn>, and a list of attributes, each of which has a
103065- name and a value. When a start or end tag token is created, its <i data-x="self-closing
103066- flag">self-closing flag</i> must be unset (its other state is that it be set), and its attributes
103067- list must be empty. Comment and character tokens have data.</p>
103062+ a distinct state from the empty string), and the <i data-x="force-quirks flag">force-quirks flag</i>
103063+ must be set to <i>off</i> (its other state is <i>on</i>). Start and end tag tokens have a tag name,
103064+ a <dfn data-x="self-closing flag">self-closing flag</dfn>, a
103065+ <dfn data-x="duplicate attribute flag">duplicate attribute flag</dfn> and a list of attributes,
103066+ each of which has a name and a value. When a start or end tag token is created, its
103067+ <i data-x="self-closing flag">self-closing flag</i> must be unset (its other state is that it be set),
103068+ its <i data-x="duplicate attribute flag">duplicate attribute flag</i> must be unset (its other state
103069+ is that it be set), and its attributes list must be empty. Comment and character tokens have data.</p>
103068103070
103069103071 <p>When a token is emitted, it must immediately be handled by the <span>tree construction</span>
103070103072 stage. The tree construction stage can affect the state of the tokenization stage, and can insert
@@ -104054,8 +104056,9 @@ dictionary <dfn>StorageEventInit</dfn> : <span>EventInit</span> {
104054104056 <p>When the user agent leaves the attribute name state (and before emitting the tag token, if
104055104057 appropriate), the complete attribute's name must be compared to the other attributes on the same
104056104058 token; if there is already an attribute on the token with the exact same name, then this is a
104057- <span data-x="parse-error-duplicate-attribute">duplicate-attribute</span> <span>parse error</span>
104058- and the new attribute must be removed from the token.</p>
104059+ <span data-x="parse-error-duplicate-attribute">duplicate-attribute</span> <span>parse error</span>,
104060+ the new attribute must be removed from the token and the token's
104061+ <i data-x="duplicate attribute flag">duplicate attribute flag</i> must be set</p>
104059104062
104060104063 <p class="note">If an attribute is so removed from a token, it, and the value that gets associated
104061104064 with it, if any, are never subsequently used by the parser, and are therefore effectively
@@ -105737,8 +105740,10 @@ dictionary <dfn>StorageEventInit</dfn> : <span>EventInit</span> {
105737105740 <li>
105738105741 <p>Let <var>element</var> be the result of <span data-x="create an element">creating an
105739105742 element</span> given <var>document</var>, <var>localName</var>, <var>given
105740- namespace</var>, null, and <var>is</var>. If <var>will execute script</var> is true, set the
105741- <var>synchronous custom elements flag</var>; otherwise, leave it unset.</p>
105743+ namespace</var>, null, <var>is</var>, and the
105744+ <span data-x="duplicate attribute flag">duplicate attribute flag</span> of the token.
105745+ If <var>will execute script</var> is true, set the
105746+ <var>synchronous custom elements flag</var>; otherwise, leave it unset.
105742105747
105743105748 <p class="note">This will cause <span data-x="custom element constructor">custom element
105744105749 constructors</span> to run, if <var>will execute script</var> is true. However, since we
0 commit comments