Environment : i686-pc-linux-gnu Compiler Version: GCC 3.3.2 Kernel Version : 2.4.7-10
It seems, not possible to specialize a template member functions const. I got a file(.impl) which got the following template functions( generalized and specialized template functions ) and i got the corresponding header file ( where this .impl file is getting included ). IOCM::Status IOCM_SequenceTempl<IOCM::Char>::_skip(IOCM::MessageBox& msgBox); IOCM::Status IOCM_SequenceTempl<IOCM::Octet>::_skip(IOCM::MessageBox& msgBox); IOCM::Status IOCM_SequenceTempl<IOCM::Short>::_skip(IOCM::MessageBox& msgBox); IOCM::Status IOCM_SequenceTempl<IOCM::UShort>::_skip(IOCM::MessageBox& msgBox); IOCM::Status IOCM_SequenceTempl<IOCM::Long>::_skip(IOCM::MessageBox& msgBox); IOCM::Status IOCM_SequenceTempl<IOCM::ULong>::_skip(IOCM::MessageBox& msgBox); IOCM::Status IOCM_SequenceTempl<IOCM::Float>::_skip(IOCM::MessageBox& msgBox); IOCM::Status IOCM_SequenceTempl<T>::_skip(IOCM::MessageBox& msgBox); But, the build is getting failed during linking stage with the below mentioned error( for all the template functions ). There is no problem with 2.95.3 Linking fails with the following error( for all the template functions ). /cm4/fsn/app/asam/atm2/nt/../export/idl/AtmApplication_ifc.cc:344: undefined reference to `IOCM_SequenceTempl<Eqpt::LogicalIfIndex>::_size(void) const' /cm4/fsn/app/asam/atm2/nt/../export/idl/AtmApplication_ifc.cc:349: undefined reference to `IOCM_SequenceTempl<Eqpt::LogicalIfIndex>::_pack(IOCM_MessageBox &) const' -- Summary: seems not possible to specialize a template member function Product: gcc Version: 3.3.2 Status: UNCONFIRMED Severity: normal Priority: P2 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: ramya dot chandar at wipro dot com CC: gcc-bugs at gcc dot gnu dot org GCC host triplet: Linux linux3 2.4.7-10 #1 Thu Sep 6 17:27:27 EDT 2001 i686 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18055