MantisBT - Community
View Issue Details
0023365Community[OCCT] OCCT:Visualizationpublic2012-08-02 00:102012-11-16 13:17
Roman Lygin 
Roman Lygin 
normalmajor 
closedfixed 
LinuxRHEL/CentOS5.6
[OCCT] 6.5.3 
[OCCT] 6.5.4[OCCT] 6.5.4 
Not needed
0023365: Name collision of global IsEqual() leads to overriding user's definition
AIS_ConnectedShape.cxx defines a global IsEqual() function, which in run-time overrides user's definition of IsEqual() in completely different module.

This is Linux-specific behavior caused by global resolution. It is unclear why static symbol gets exported and redefines another symbol though.

See details on the forum - http://www.opencascade.org/org/forum/thread_23553/?forum=3. [^]
Recommendation to use NCollection containers is to use a hasher parameter (introduced in 6.5.3) instead of global definition of IsEqual()/HashCode(), and also use of explicit namespaces' to avoid name collision.
No tags attached.
Issue History
2012-08-02 00:10Roman LyginNew Issue
2012-08-02 00:10Roman LyginAssigned To => san
2012-08-02 00:15Roman LyginNote Added: 0021196
2012-08-02 00:15Roman LyginStatusnew => resolved
2012-08-03 16:04sanNote Added: 0021200
2012-08-03 16:04sanAssigned Tosan => bugmaster
2012-08-03 16:04sanStatusresolved => reviewed
2012-08-07 13:12mkvNote Added: 0021207
2012-08-07 13:13mkvTest case number => Not needed
2012-08-07 13:13mkvStatusreviewed => tested
2012-08-10 10:32bugmasterTarget Version => 6.5.4
2012-08-13 15:38rlnChangeset attached => occt master f3fa1d35
2012-08-13 15:38rlnAssigned Tobugmaster => rln
2012-08-13 15:38rlnStatustested => verified
2012-08-13 15:38rlnResolutionopen => fixed
2012-08-31 11:58aivAssigned Torln => Roman Lygin
2012-11-16 13:14bugmasterFixed in Version => 6.5.4
2012-11-16 13:17bugmasterStatusverified => closed

Notes
(0021196)
Roman Lygin   
2012-08-02 00:15   
Fix pushed as CR23365
(0021200)
san   
2012-08-03 16:04   
Branch CR23365 reviewed without remarks, ready for testing.
(0021207)
mkv   
2012-08-07 13:12   
Dear BugMaster,

Branch CR23365 (and products from GIT master) was compiled on Linux and Windows platforms and tested.

Regression:
Not detected

Improvements:
Not detected

Testing case:
Not needed