Operating System - HP-UX
1829134 Members
2197 Online
109986 Solutions
New Discussion

STL error building in Itanium

 
SOLVED
Go to solution
Thiagu_1
Advisor

STL error building in Itanium

Our application is build on HP-UX 11.11 PA-RISC, HP-UX 11.23 ipf64. We use certain third party tools like SourceProEd8, Orbix 6.3SP2, etc.

We tried building our application as well as RW’s SourcePro using native HP C++ libraries.

Build went through and it was working fine in HP PA-RISC but it is throwing the following compiler error in HP Itanium machine.



"/opt/aCC/include_std/memory", line 278: error #2403: function "std::allocator<_TypeT>::address(std::allocator<_TypeT>::reference) const [with _TypeT=std::map

>, std::less, std::allocator<:pair>
d::allocator>>>>::key_type]" has already been declared

const_pointer address (const_reference __x) const {

^

detected during:

instantiation of class "std::allocator<_TypeT> [with _TypeT=std::map>, std::less

, std::allocator<:pair>>>>>::key_type]" at line 88 of "/opt/aCC/include_std/

rw/tree"



Also please find our compiler versions below

HP-UX PA-RISC
# aCC –V
aCC: HP ANSI C++ B3910B A.03.65

HP-UX Itanium
# aCC –V
aCC: HP aC++/ANSI C B3910B A.06.10 [Mar 22 2006]

IONA's support matrix for Orbix 6.3 SP2 is available in the link

http://www.iona.com/products/prod_comp_java_plat.htm
4 REPLIES 4
Steven E. Protter
Exalted Contributor

Re: STL error building in Itanium

Shalom,

Oracle and other vendors have different releases Oracle versus Itanium.

I would therefore conclude that different code and/or tools is required.


Many other vendors have to do the same thing. I would check with my tool vendors and make sure you have a toolset that truly supports both platforms. If so, its debug time and you will likely need to maintain two sets of code.

SEP
Steven E Protter
Owner of ISN Corporation
http://isnamerica.com
http://hpuxconsulting.com
Sponsor: http://hpux.ws
Twitter: http://twitter.com/hpuxlinux
Founder http://newdatacloud.com
Dennis Handly
Acclaimed Contributor
Solution

Re: STL error building in Itanium

This problem is basically simple to solve if you have seen it several times recently. ;-)

You basically have two functions with the same signature because you aren't using the correct value_type when passed to a STL map or set. If you make the first argument const, then one member address() matches the other.

From the error messages:
std::map ... >

This isn't legal and you'll have to remove the const:
std::map >
Dennis Handly
Acclaimed Contributor

Re: STL error building in Itanium

Thiagu_1
Advisor

Re: STL error building in Itanium

Thanks Dennis, it is working now.