This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ 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: problem getting std::string::_Rep::_S_max_size and std::string::_Rep::_S_terminal under Tru64 linked


>I'm using gcc ver. 2.97-tru64-010710 downloaded from
>www.tru64unix.compaq.com (now I'm trying to download
>and compile the newest 3.2.1 gcc).

Great. I'd suggest trying to get 3.2.1 up and running first, and then
dealing with this problem if you still have it. I know that gcc-3.2.0
worked on tru64, based on:
http://gcc.gnu.org/gcc-3.2/buildstat.html

So you should be able to get 3.2.1 working.

If you still have the problem, another solution is to add explicit
instantiations to get around weak linkage issues.

You should be able to use the same solution that
testsuite/21_strings/capacity.cc uses:

#if !__GXX_WEAK__
// Explicitly instantiate for systems with no COMDAT or weak support.
template 
  std::basic_string< A<B> >::size_type 
  std::basic_string< A<B> >::_Rep::_S_max_size;

template 
  A<B>
  std::basic_string< A<B> >::_Rep::_S_terminal;
#endif


Of course, you'll have to changeup the explicit instantiations to be the
ones that you're missing (char, most probably.)

best,
benjamin


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