Status: New
Owner: [email protected]
Labels: Type-Defect Priority-Medium

New issue 178 by fnjordy: 2.3.0 Link fail Solaris 10/SPARC/Sun Studio 12U1
http://code.google.com/p/protobuf/issues/detail?id=178

What steps will reproduce the problem?
1.  Edit google/protobuf/repeated_field.h to add "#include <algorithm>" as
per defect 134.
2.  Vanilla build with Sun Studio.
3.  Build completes.
4.  Build application with static libprotobuf.a

What is the expected output? What do you see instead?

$ CC -o ref/release/examples/pgmping -m64 ref/release/examples/pgmping.o
ref/release/examples/ping.pb.o /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a -L/opt/glib-sunstudio/lib -Lref/release
-L. -lpgmex -lpgm -lresolv -lsocket -lnsl -lm -lgthread-2.0 -lpthread -
lthread -lrt -lglib-2.0
Undefined                       first referenced
 symbol                             in file
std::_String_base<char,std::allocator<char> >::~_String_base #Nvariant 1()
/opt/glib-sunstudio/lib/sparcv9/libprotobuf.a(strutil.o)
void*std::__node_alloc<true,0>::_M_allocate(unsigned long) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(common.o)
std::_Vector_base<void*,std::allocator<void*> >::~_Vector_base #Nvariant
1() /opt/glib-sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::ios_base::_Loc_init::_Loc_init()  /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(zero_copy_stream_impl.o)
std::_Rb_tree_node_base*std::_Rb_global<bool>::_Rebalance_for_erase(std::_R
b_tree_node_base*,std::_Rb_tree_node_base*&,std::_Rb_tree_node_base*&,std::
_Rb_tree_node_base*&) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::vector<void*>::~vector() /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::_LimG<bool>::_D_inf          /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
[Hint: static member std::_LimG<bool>::_D_inf must be defined in the
program]

std::_LimG<bool>::_F_inf          /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
[Hint: static member std::_LimG<bool>::_F_inf must be defined in the
program]

void std::vector<void*>::_M_fill_insert(void**,unsigned long,void*const&)
/opt/glib-sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::less<__type_0>std::__less<unsigned long>(__type_0*) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
void
std::_Rb_global<bool>::_Rebalance(std::_Rb_tree_node_base*,std::_Rb_tree_no
de_base*&) /opt/glib-sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
void std::_String_base<char,std::allocator<char>
::_M_throw_out_of_range()const /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::_Rb_tree_node_base*std::_Rb_global<bool>::_M_increment(std::_Rb_tree_n
ode_base*) /opt/glib-sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
void std::vector<void*>::reserve(unsigned long) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::_Stl_prime<bool>::_M_list    /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
[Hint: static member std::_Stl_prime<bool>::_M_list must be defined in the
program]

void std::_String_base<char,std::allocator<char>
::_M_allocate_block(unsigned long) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
__type_0 std::fill_n<void**,unsigned long,void*>(__type_0,__type_1,const
__type_2&) /opt/glib-sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::string &std::string::append<char*>(__type_3,__type_3,const
std::forward_iterator_tag&) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(common.o)
std::_Rb_tree_node_base*std::_Rb_global<bool>::_M_decrement(std::_Rb_tree_n
ode_base*) /opt/glib-sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::string &std::string::_M_assign_dispatch<char*>(__type_3,__type_3,const
std::__false_type&) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
void std::vector<void*>::_M_insert_overflow(void**,void*const&,const
std::__true_type&,unsigned long,bool) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
void std::__stl_throw_out_of_range(const char*) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(common.o)
std::allocator<char>::~allocator()       /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(common.o)
std::string::basic_string() /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(common.o)
std::string &std::string::append<const char*>(__type_3,__type_3,const
std::forward_iterator_tag&) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(common.o)
std::allocator<void*>::~allocator()      /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::_LimG<bool>::_D_qNaN         /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
[Hint: static member std::_LimG<bool>::_D_qNaN must be defined in the
program]

std::ios_base::_Loc_init::~_Loc_init()  /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(zero_copy_stream_impl.o)
void std::__node_alloc<true,0>::_M_deallocate(void*,unsigned long)
/opt/glib-sunstudio/lib/sparcv9/libprotobuf.a(common.o)
__type_0 std::__lower_bound<const unsigned long*,unsigned
long,std::less<unsigned long>,long>(__type_0,__type_0,const
__type_1&,__type_2,__type_3*) /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
std::_LimG<bool>::_F_qNaN         /opt/glib-
sunstudio/lib/sparcv9/libprotobuf.a(descriptor.o)
[Hint: static member std::_LimG<bool>::_F_qNaN must be defined in the
program]

ld: fatal: Symbol referencing errors. No output written to
ref/release/examples/pgmping


What version of the product are you using? On what operating system?

Solaris 10 on SPARCv9
Sun Studio 12U1
protobuf 2.3.0
SUNWlibC 119963-16

Please provide any additional information below.

I have not applied the latest patches (128228-06, 141860-03, 141861-04)
which fix various C/C++ Compiler issues, this is a stock clean install.

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

--
You received this message because you are subscribed to the Google Groups "Protocol 
Buffers" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/protobuf?hl=en.

Reply via email to