This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Strange "No matching function for call" compilation error with G++ 4.1
- From: "Yuanfei guo" <yuanfei8077 at gmail dot com>
- To: gcc-help at gcc dot gnu dot org
- Date: Wed, 27 Sep 2006 15:59:48 +0800
- Subject: Strange "No matching function for call" compilation error with G++ 4.1
Hi there,
I am porting some code to SUSE 10, with G++ 4.1. And hit an strange
"no matching function call" compilation error. I am confused because
the calling function and candidate are nearly 100% same.
I wonder if this is a known G++ limitation or issue ? Because the same
program got compiled with VC8.
Below is the compilation environment info and compilation error.
env info
=========
g++ (GCC) 4.1.0 (SUSE Linux)
No compile option is added
Compilation error
==============
./Cache/CacheManager.h:424: error: no matching function for call to
tdat_hash_map<std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> >, Element<unsigned int, SqlObjectDefn,
std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> > >*,
MemAllocator<std::pair<std::basic_string<wchar_t,
std::char_traits<wchar_t>, std::allocator<wchar_t> >, Element<unsigned
int, SqlObjectDefn, std::basic_string<wchar_t,
std::char_traits<wchar_t>, std::allocator<wchar_t> > >*> >
::tdat_hash_map1(MemAllocator<std::pair<std::basic_string<wchar_t,
std::char_traits<wchar_t>, std::allocator<wchar_t> >, Element<unsigned
int, SqlObjectDefn, std::basic_string<wchar_t,
std::char_traits<wchar_t>, std::allocator<wchar_t> > >*> >, int)
./Common/TdatHashMap.h:250: note: candidates are: static void
tdat_hash_map<_Key, _Tp, _AllocType>::tdat_hash_map1(_AllocType&, int)
[with _Key = std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> >, _Tp = Element<unsigned int, SqlObjectDefn,
std::basic_string<wchar_t, std::char_traits<wchar_t>,
std::allocator<wchar_t> > >*, _AllocType =
MemAllocator<std::pair<std::basic_string<wchar_t,
std::char_traits<wchar_t>, std::allocator<wchar_t> >, Element<unsigned
int, SqlObjectDefn, std::basic_string<wchar_t,
std::char_traits<wchar_t>, std::allocator<wchar_t> > >*> >]
Any comments/suggestions are higly appreciated.
Thanks,
-Kelvin