From: Matthias Troyer (troyer_at_[hidden])
Date: 2003-05-25 07:45:59


On Sunday, May 25, 2003, at 01:10 PM, John Maddock wrote:

>> I don't understand why those tables are unresolved, when the other
>> table (
>> s_match_vtable) is OK, maybe there's a usage difference: I'll look
>> into
> it.
>
> Looked at the code, and there's no difference between the two, this is
> nasty
> because there's no real way to know which template instances need
> instantiating for this one (because it depends upon the iterator type).

Only one seems to be used in posix_api.o

> Can you think of any thing that could be added to the code to force
> instantiation for these tables?
>

I have added

#ifdef __GNUC__
template
boost::re_detail::perl_matcher<__gnu_cxx::__normal_iterator<char const*
, std::basic_string<char, std::char_traits<char>, std::allocator<char>
> >, std:
:allocator<boost::sub_match<__gnu_cxx::__normal_iterator<char const*,
std::basic
_string<char, std::char_traits<char>, std::allocator<char> > > > >,
boost::regex
_traits<char>, std::allocator<char> >;
#endif

but that just instantiates what I currently need in my code and is no
real solution.

Why do you manually build these vtables and don't use virtual functions?

Matthias