1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#!/usr/bin/perl -w
my %func=();
my %class=();

while(<>)
{
    if(!/undefined reference to \`(.*)\'/){next}
    $_=$1;
    s/ZIRAN:://g;
    s/, /,/g;
    s/std::__cxx11::basic_string<char,std::char_traits<char>,std::allocator<char> >/std::string/g;
    $func{$_}=1;
    s/::.*//;
    $class{$_}=1;
}

for(sort keys %class)
{
    print "template class $_;\n";
}

print "\n------------------------------------------------------------------\n";

for(sort keys %func)
{
    print "template $_;\n";
}