This is the mail archive of the gcc@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]

C++ mangler bug?


Hiya,

I noticed that g++-2.96 mangles

map<memblk_key_ct, memblk_info_ct, less<memblk_key_ct>, allocator<memblk_info_ct> >::erase(_Rb_tree_iterator<pair<memblk_key_ct const, memblk_info_ct>, pair<memblk_key_ct const, memblk_info_ct> &, pair<memblk_key_ct const, memblk_info_ct> *>)

as

erase__t3map4Z13memblk_key_ctZ14memblk_info_ctZt4less1Z13memblk_key_ctZt9allocator1Z14memblk_info_ctGt17_Rb_tree_iterator3Zt4pair2ZC13memblk_key_ctZ14memblk_info_ctZRt4pair2ZC13memblk_key_ctZ14memblk_info_ctZPt4pair2ZC13memblk_key_ctZ14memblk_info_ct

and I am wondering if this is correct:

The 'G' in there doesn't seem to serve any purpose.  If you leave the 'G' away it
still demangles ok:

>c++filt erase__t3map4Z13memblk_key_ctZ14memblk_info_ctZt4less1Z13memblk_key_ctZt9allocator1Z14memblk_info_ctt17_Rb_tree_iterator3Zt4pair2ZC13memblk_key_ctZ14memblk_info_ctZRt4pair2ZC13memblk_key_ctZ14memblk_info_ctZPt4pair2ZC13memblk_key_ctZ14memblk_info_ct
map<memblk_key_ct, memblk_info_ct, less<memblk_key_ct>, allocator<memblk_info_ct> >::erase(_Rb_tree_iterator<pair<memblk_key_ct const, memblk_info_ct>, pair<memblk_key_ct const, memblk_info_ct> &, pair<memblk_key_ct const, memblk_info_ct> *>)

I thought that a 'G' would always be followed by a digit?
Can someone tell me what are the mangling rules in this case?

-- 
Carlo Wood <carlo@alinoe.com>

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