Can't compile on HP 11 Platform

E

Einat d

HELP!

This code compiles fine on the Solaris and AIX platform but for some
reasone fails on the HP 11 platform.

Here is the error I'm getting:

Error 226: "ClsGetAllRepository.cpp", line 107 # No appropriate
function found for call of 'operator ='. Last viable candidate was
"__rw::__rw_tree_iter<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser *>,long,const
std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *> *,const
std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
&,__rw::__rw_rb_tree_node<std::allocator<std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
,std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject
*,__rw::__select1st<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject *> > >
&__rw::__rw_tree_iter<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser *>,long,const
std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *> *,const
std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
&,__rw::__rw_rb_tree_node<std::allocator<std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
,std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject
*,__rw::__select1st<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject *> > >::eek:perator =(const
__rw::__rw_tree_iter<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser *>,long,const
std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *> *,const
std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
&,__rw::__rw_rb_tree_node<std::allocator<std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
,std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject
*,__rw::__select1st<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject *> > > &)"
["/opt/aCC/include_std/rw/tree", line 153]. Argument of type 'class
__rw_tree_iter<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,long,std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
*,std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
&,__rw::__rw_rb_tree_node<std::allocator<std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
,std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject
*,__rw::__select1st<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject *> > >' could not be converted to
'const __rw::__rw_tree_iter<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser *>,long,const
std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *> *,const
std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
&,__rw::__rw_rb_tree_node<std::allocator<std::pair<RssLocalRepository::ClsRssObject
*,RssLocalRepository::ClsRssUser *>
,std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject
*,__rw::__select1st<std::pair<RssLocalRepository::ClsRssObject
*const,RssLocalRepository::ClsRssUser
*>,RssLocalRepository::ClsRssObject *> > > &'.
m_connectionPoolIter = m_connectionPool.begin();
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^


I'm getting the same error for other code lines as well.

The definition of the above variables is:
typedef ConnectionPool::const_iterator ConnectionPoolConstIter;
typedef multimap<ClsRssObject*,
ClsRssUser*,
RssObjectPtrCompare,
ConnectionAllocator > ConnectionPool;

ConnectionPool m_connectionPool;
ConnectionPoolConstIter m_connectionPoolIter;

Here is the output for "aCC -V":
aCC: HP ANSI C++ B3910B A.03.27

Can anyone help???
 
V

Victor Bazarov

Einat d said:
This code

What code? You must have forgotten to post it...
compiles fine on the Solaris and AIX platform but for some
reasone fails on the HP 11 platform.

Here is the error I'm getting:

Error 226: "ClsGetAllRepository.cpp", line 107 # No appropriate
function found for call of 'operator ='.
[...]

I'm getting the same error for other code lines as well.

The definition of the above variables is:
typedef ConnectionPool::const_iterator ConnectionPoolConstIter;

And how are we supposed to divine the definition of 'ConnectionPool'?
typedef multimap<ClsRssObject*,
ClsRssUser*,
RssObjectPtrCompare,
ConnectionAllocator > ConnectionPool;

And what about RssObjectPtrCompare, ConnectionAllocator? We're not
mind readers, you know...
ConnectionPool m_connectionPool;
ConnectionPoolConstIter m_connectionPoolIter;

Here is the output for "aCC -V":
aCC: HP ANSI C++ B3910B A.03.27

Can anyone help???

Have you tried HP Technical Support? What did they say?

Victor
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
474,432
Messages
2,571,682
Members
48,796
Latest member
Greg L.

Latest Threads

Top