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=18056