CC: Sun C++ 5.8, Solaris X86_64bit : Problems with simple vector program
807575Nov 19 2008 — edited Nov 25 2008Hi guys,
Working on Solaris X86_64 bit. I'm using the following compiler:
CC: Sun C++ 5.8 Patch 121018-16 2008/06/25
When I try to compile the following simple cpp file, with vectors involved, I get an error:
/*** myVect.cpp ***/
#include <vector>
#include <string>
int main ()
{
std::vector< std::pair<char *, char *> > pVector;
std::vector< std::pair< std::string, std::string> > services;
std::copy( pVector.begin(), pVector.end(), std::back_inserter( services ) );
return 0;
}
CC myVect.cpp -c -mt -features=extensions -erroff=doubunder -xarch=generic64 -xtarget=generic64 -KPIC -xarch=generic64 -xtarget=generic64 -DBUILDING_DLL -D_REENTRANT -DPM_64BIT -DFD_SETSIZE=65536 -DUNIX -DSunOS -DINFA_PREFIX -DSOLARIS -DSOLARISX86_64 -DACE_HAS_EXCEPTIONS -DATH_UNICODE -I/usr/java/include -I/usr/java/include/solaris -I../../../../Packages/solaris_x86/64/SAP/include -I../../../../Packages/solaris_x86/64/XML/libxml/include -I../../../../Packages/solaris_x86/64/XML/libxslt/include -I../../../../Packages/solaris_x86/64/Tcl/include -I../../../../Packages/solaris_x86/64/DB/DB2/include -I../../../../Packages/solaris_x86/64/DB/Oracle/include -I../../../../Packages/solaris_x86/64/DB/MySQL/include -I../../../../Packages/all/otl/include -I../../../../Packages/solaris_x86/64/ace/include -I../../../../Packages/solaris_x86/64/ace/include/TAO -I../../../../Packages/solaris_x86/64/ace/orbsvcs -I../../../../Packages/solaris_x86/64/icu/include -I../../../../Packages/solaris_x86/64/QAS/include -I../../../../Packages/solaris_x86/64/CppUnit/include -I../../../../Packages/solaris_x86/64/Informatica/include -I../../../../Packages/solaris_x86/64/MelissaData/include -I../../../../Packages/solaris_x86/64/AddressDoctor/include -I../../../../Packages/solaris_x86/64/ids/include -I../../../SivTech/cpp -I../../../SivTech/cpp/Components/Common -I../../../SivTech/cpp/Components/Database/Common -I../../../SivTech/cpp/Public -I../ -o myVect.o
"/opt/SUNWspro/prod/include/CC/Cstd/./algorithm.cc", line 429: Error: Cannot assign std::pair<char*, char*> to std::back_insert_iterator<std::vector<std::pair<std::string, std::string> >> without "std::back_insert_iterator<std::vector<std::pair<std::string, std::string> >>::operator=(const std::back_insert_iterator<std::vector<std::pair<std::string, std::string> >>&)";.
"myVect.cpp", line 8: Where: While instantiating "std::copy<std::pair<char*, char*>*, std::back_insert_iterator<std::vector<std::pair<std::string, std::string> >>>(std::pair<char*, char*>*, std::pair<char*, char*>*, std::back_insert_iterator<std::vector<std::pair<std::string, std::string> >>)".
"myVect.cpp", line 8: Where: Instantiated from non-template code.
1 Error(s) detected.
Has anyone come across this before?