This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: c++/7934: definition of static member for template class missing in obj file


Wolfgang,

My description was not detailed enough. Here is the code example:

template <class T>
class A
{
  static T * instance;
};

template <class T>
T * instance=0;

Note all of the above codes are in a header file - I know this doesn't sound
right, but on the other hand I don't have a better solution for this. This
is not my code either.

I guess the idea is that when the template class is used, the instance will
be automatically defined. 

The same gcc on Sun works for this. So I guess this might be a library
problem for HP compatibility.

Michael


-----Original Message-----
From: bangerth@dealii.org [mailto:bangerth@dealii.org] 
Sent: Tuesday, December 03, 2002 6:10 PM
To: gcc-bugs@gcc.gnu.org; gcc-prs@gcc.gnu.org; michael_gu@maxtor.com;
mkjyg@charter.net; nobody@gcc.gnu.org
Subject: Re: c++/7934: definition of static member for template class
missing in obj file

Synopsis: definition of static member for template class missing in obj file

State-Changed-From-To: open->feedback
State-Changed-By: bangerth
State-Changed-When: Tue Dec  3 15:10:06 2002
State-Changed-Why:
    Hi Michael,
    your bug report is missing a code example, so it is hard to
    tell whether the problem is with the compiler or your program. Please
send it to us so that we can tell.
    
    However, note that a common source of problems is that
    people write code like
      template <class T> struct X {
         static int i;
      }
    Now, in order to actually get a _definition_ of the static
    member variable, you have to have a line like
      template <class T> int X<T>::i;
    in your program.
    
    Regards
      Wolfgang

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&p
r=7934


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]