https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61718
--- Comment #2 from goughost <goughost at yahoo dot com.cn> --- (In reply to Andrew Pinski from comment #1) > > default <nothing> hidden > > Simple since YYY is hidden (by the paragma), XXX<YYY*> has to be also hidden > because there is no way to export the class XXX<YYY*> since it depends on > the visibility of YYY. If you think it should have been visible, then you > will can get an One definition rule violation if another shared library has > a class named YYY. So it's a bug in firefox: ``https://bugzilla.mozilla.org/show_bug.cgi?id=1034798``_.