var div = document.createElement('div'); div.appendChild(document.createElement('p')); var range = document.createRange(); range.selectNode(div.firstChild); throws a INVALID_NODE_TYPE_ERROR but it shouldn't. The problem is that checkNodeBA throws this exception when the root node of refNode is not a document, a document fragment, or an Attr node. This bug was found by the newly added LayoutTests/http/tests/w3c/dom/ranges/Range-selectNode.html
<rdar://problem/22570635>
*** This bug has been marked as a duplicate of bug 149490 ***