nsXULElement::Create expects that it can check for example mHasClassAttribute value. But that is just always false if the protoattributes are created after the real DOM element.
In practice this shouldn't matter much since the XUL element is used within XBL's not-yet-cloned content. But I'm investigating to disable using prototypes in XUL (for anything else but serializing and de-serializing) and noticed this inconsistency.
Created attachment 641839 [details] [diff] [review] patch https://tbpl.mozilla.org/?tree=Try&rev=64f421f8386b