<!DOCTYPE html><!-- webkit-test-runner [ enableKeygenElement=true ] -->
<html>
Webkit Bug 86019 - Crash due to floats not removed from first-letter element.
<style>
.li2 { width: 0px; }
.li2:first-letter { float: left; content: counter(section); }
.li2:first-of-type { display: -webkit-inline-flexbox; }
</style>
<script>
if (window.testRunner)
    testRunner.dumpAsText();
    
function crash() {
    li1 = document.createElement('li');
    document.documentElement.appendChild(li1);
    keygen1 = document.createElement('keygen');
    keygen1.setAttribute('autofocus', 'autofocus');
    document.documentElement.appendChild(keygen1);
    li2 = document.createElement('li');
    li2.setAttribute('class', 'li2');
    document.documentElement.appendChild(li2);
    text1 = document.createTextNode("PASS. WebKit didn't crash.");
    li2.appendChild(text1);
}
window.onload = crash;
</script>
</html>
