Skip to Main Content

DevOps, CI/CD and Automation

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

12.4/12.5 Compatibility: vector bool of STLport is not compatible with prior releases

3146023Dec 29 2015 — edited Sep 14 2016

The compatibility of the operations tied with "vector<bool>" is not compatible between Solaris Studio 12.3 and 12.4, also the 12.5 BETA has the same issue with 12.4.

Compiler env: Solaris Studio 12.3

# /opt/solarisstudio12.3/bin/CC -library=stlport4 -o test2 test2.c

Runtime env: Solaris Studio 12.4 with the following error:

ld.so.1: test2: fatal: relocation error: file test2: symbol __1cDstdGvector4Cbn0AJallocator4Cb___N_M_insert_aux6Mn0AJ_Bit_iter4n0AO_Bit_reference_Cpn0D___b_v_: referenced symbol not found

Check the function in the library in 12.4 and 12.3 as following:

# nm /opt/solarisstudio12.4/lib/stlport4/libstlport.so.1 | grep N_M_insert_aux6Mn0AJ_Bit_iter4n0AO_Bit_reference_Cpn0D___b_v_ | c++filt  ==> no output here

# nm /opt/solarisstudio12.3/lib/stlport4/libstlport.so.1 | grep N_M_insert_aux6Mn0AJ_Bit_iter4n0AO_Bit_reference_Cpn0D___b_v_

[9154]  |    682528|    1045|FUNC |GLOB |3    |12     |__1cDstdGvector4Cbn0AJallocator4Cb___N_M_insert_aux6Mn0AJ_Bit_iter4n0AO_Bit_reference_Cpn0D___b_v_


# nm /opt/solarisstudio12.3/lib/stlport4/libstlport.so.1 | grep N_M_insert_aux6Mn0AJ_Bit_iter4n0AO_Bit_reference_Cpn0D___b_v_ | c++filt

[9154]  |    682528|    1045|FUNC |GLOB |3    |12     |void std::vector<bool>::_M_insert_aux(std::_Bit_iter<std::_Bit_reference,std::_Bit_reference*>,bool)

The code of test2.c is following:

#include <vector>

#include <iterator>

using namespace std;

int main()

{

    vector<bool> v;

    bool b = false;

    v.push_back(b);

    return 0;

}

The above compatibility issue also exists if compiled with 12.3 and run in 12.5 BETA. And as the STLport version of 12.3 and 12.4 are both STLport 4.5.3, so this issue seems not a introduced by open source community but introduced by Solaris Studio 12.4, right?

Thanks in advance

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 12 2016
Added on Dec 29 2015
32 comments
5,950 views