Jacek Caban (@jacek) commented about dlls/mshtml/tests/documentmode.js:
+ "abbr", "acronym", "address", "article", "aside", "audio", "b", "base", "basefont", "bdi", "bdo", "big", "blockquote", "body", + "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "data", "datalist", "dd", "del", "details", + "dfn", "dialog", "dir", "div", "dl", "dt", "em", "fieldset", "figcaption", "figure", "font", "footer", "frame", "frameset", + "h1", "h2", "h3", "h4", "h5", "h6", "h7", "head", "header", "hr", "html", "i", "input", "ins", "kbd", "label", "legend", "li", + "link", "main", "map", "mark", "meta", "meter", "nav", "noframes", "noscript", "ol", "optgroup", "option", "output", "p", + "param", "picture", "pre", "progress", "q", "rp", "rt", "ruby", "s", "samp", "script", "section", "select", "small", "source", + "span", "strike", "strong", "style", "sub", "summary", "sup", "svg", "table", "tbody", "td", "template", "textarea", "tfoot", + "th", "thead", "time", "title", "tr", "track", "tt", "u", "ul", "var", "video", "wbr", "winetest" + ]; + for(i = 0; i < tags.length; i++) { + // IE7 and below throw "Unknown Runtime Error" for some tags, like frameset + try { + document.body.innerHTML = '<' + tags[i] + ' id="testid" name="testname"></' + tags[i] + '><' + tags[i] + ' id="foobar"></' + tags[i] + '>'; + }catch(e) { + continue; + } I think it would be better to simply drop problematic tags. It's not really interesting to test that many tags anyway, please just pick a few.
BTW, you could also consider using something like `for (tag in tags)` loop. Other than that, patches look good now. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/1031#note_10549