PR3042
Gabriel Dos Reis
Gabriel.Dos-Reis@cmla.ens-cachan.fr
Sat Jun 9 19:07:00 GMT 2001
David Edelsohn <dje@watson.ibm.com> writes:
| The reason that I see this and the previous implicit template
| instantiation COMDAT issues as different is that "static" is a
| well-defined C and C++ keyword with well-defined semantics.
Whereas "static" is well-defined in C and C++, there is a fundamental
difference in their semantics: static data members have external linkage.
The issue at hand is more about implicit instantiation semantics
implementation than "static" semantics.
| Implicit instantiation is an implementation issue, not a language
| issue. I make this claim because GNU C++ and other compilers specifically
| provide options like -fno-implicit-templates and -frepo. There is no
| -fno-implicit-statics flag.
No, implicit instantiation is a -language- issue and when implicit
instantiations occur is specified by the C++ standards. Those options
you're referring to are implementation issues but they don't make
implicit instantiation not a language issue.
-- Gaby
More information about the Libstdc++
mailing list