https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116943

--- Comment #3 from mauro russo <ing.russomauro at gmail dot com> ---
may I suppose that the following text from [temp.inst]:

The implicit instantiation of a class template specialization causes
- the implicit instantiation of the declarations, but not of the definitions,
of the non-deleted class member functions, member classes, scoped member
enumerations, static data members, member templates, and friends; and
- the implicit instantiation of the definitions of deleted member functions,
unscoped member enumerations, and member anonymous unions.

implies that in my example the declaration of the class member Q is
instantiated but not its definition, and similarly for the data member q, but
in turn its declaration implies the instantiation of the definition of Q ?

This would formally answer to my question, despite a generalized rule might
have waited for an object of the class S to be defined first.

Please, confirm so that the report may be closed.

Reply via email to