Error [html5]: "No p element in scope but a p end tag seen."
properly applies to
Intentionally missing p element in scope.</p>

but is inaccurate in this case
<p><div>Here before there is a p element in scope!</div></p>

I know <p> can only contains inline elements, and not a block element like <div>, but in second case the message could be more helpful, for example: "P elements are only allowed to contain inline elements. DIV is a block element."

Thank you,
Michele Salvador