MantisBT
Mantis Bug Tracker Workflow

View Issue Details Jump to Notes ] Related Changesets ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0028439Open CASCADE[OCCT] OCCT:Configurationpublic2017-02-03 19:542017-09-29 16:28
Reporterkgv 
Assigned Toapn 
PrioritynormalSeveritymajor 
StatusclosedResolutionfixed 
PlatformMacOSOSOS VersionX
Product Version[OCCT] 7.2.0 
Target Version[OCCT] 7.2.0Fixed in Version[OCCT] 7.2.0 
Summary0028439: Configuration - compilation error when using thread_local within XCode 7 or earlier
DescriptionThe following compilation error occurs while using XCode 6.4:
/occt/src/Standard/Standard_Failure.cxx:75:8: error: thread-local storage is not supported for the current 
target
static Standard_THREADLOCAL Handle(Standard_Failure) RaisedError;
       ^
/occt/src/Standard/Standard_Failure.cxx:67:32: note: expanded from macro 'Standard_THREADLOCAL'
  #define Standard_THREADLOCAL thread_local
                               ^
1 error generated.
make[2]: *** [src/TKernel/CMakeFiles/TKernel.dir/__/Standard/Standard_Failure.cxx.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [src/TKernel/CMakeFiles/TKernel.dir/all] Error 2
make: *** [all] Error 2


thread_local has a long story on OS X - while official CLang supported this C++ feature for a long time, it was disabled within CLang builds coming with XCode, because Apple wanted to make better implementation of this feature (e.g. with less overhead / better performance utilizing system linker features).

It was finally introduced within XCode 8, however not for all targets - e.g. 32-bit ARM is out of the board (while 64-bit ARM and x86_64 are supported).

Therefore, the check in OCCT code should be corrected to support more platforms.
Steps To ReproduceN/A
TagsNo tags attached.
Test case numberNot needed
Attached Files

- Relationships
parent of 0028502closedbugmaster Open CASCADE Compilation error on Arch Linux (clang compiler) 
child of 0028217closedapn Community Error handling is not thread safe and causing memory corruption and sporadic crashes 

-  Notes
(0063428)
git (administrator)
2017-02-03 19:58

Branch CR28439 has been created by kgv.

SHA-1: 0c97269b4a5377737aab67933ae077bf5e626f68


Detailed log of new commits:

Author: kgv
Date: Fri Feb 3 19:56:04 2017 +0300

    0028439: Configuration - compilation error when using thread_local within XCode 7 or earlier
    
    __has_feature(cxx_thread_local) check has been added
    for using thread_local keyword within CLang.
(0063429)
kgv (developer)
2017-02-03 19:58

Patch is ready for review.
(0063433)
abv (manager)
2017-02-03 22:36

No remarks, please test
(0063483)
apv (tester)
2017-02-07 12:52

Dear BugMaster,

During building of branch CR28439 (SHA-1: 0c97269b4a5377737aab67933ae077bf5e626f68) from occt git-repository (and master from products git-repository) compilation errors have been detected.
On Linux:
http://jenkins-test-05.nnov.opencascade.com/view/CR28439-master/job/CR28439-master-OCCT-Debian70-64-opt-compile/1/parsed_console/ [^]
On Windows:
http://jenkins-test-05.nnov.opencascade.com/view/CR28439-master/job/CR28439-master-OCCT-Windows-64-VC10-opt-compile/1/parsed_console/ [^]
(0063484)
apv (tester)
2017-02-07 12:53

Dear Kirill,

Branch CR28439 has been rejected due to:
- compilation errors
(0063488)
git (administrator)
2017-02-07 14:16

Branch CR28439 has been updated by abv.

SHA-1: 377577a28d5e1a5167385236f49e609f06d31c78


Detailed log of new commits:

Author: abv
Date: Tue Feb 7 14:16:17 2017 +0300

    // correction of preprocessor condition

(0063489)
abv (manager)
2017-02-07 14:17

Corrected, please test
(0063491)
git (administrator)
2017-02-07 14:19

Branch CR28439 has been updated forcibly by abv.

SHA-1: 1bcd0916e106c20cf6a98fc189e4288925298fe0
(0063492)
kgv (developer)
2017-02-07 14:19

Please check updated patch.
(0063722)
apv (tester)
2017-02-09 11:16

Dear BugMaster,

Branch CR28439 from occt git-repository (and master from products git-repository) was compiled on Linux, MacOS and Windows platforms and tested.
SHA-1: 1bcd0916e106c20cf6a98fc189e4288925298fe0

Number of compiler warnings:
occt component:
   Linux: 0 (0 on master)
   Windows: 0 (0 on master)
   MasOS: 0 (0 on master)
products component:
   Linux: 64
   Windows: 0
   MacOS: 1192

Regressions/Differences:
Not detected

Testing cases:
Not needed

Testing on Linux:
Total MEMORY difference: 91934916 / 91294630 [+0.70%]
Total CPU difference: 19813.360000000397 / 19662.570000000327 [+0.77%]

Testing on Windows:
Total MEMORY difference: 57124532 / 57124391 [+0.00%]
Total CPU difference: 18295.28247669851 / 18512.045866198645 [-1.17%]
(0064496)
git (administrator)
2017-03-20 14:35

Branch CR28439 has been deleted by inv.

SHA-1: 1bcd0916e106c20cf6a98fc189e4288925298fe0

- Related Changesets
occt: master dace4784
Timestamp: 2017-02-09 12:52:59
Author: kgv
Committer: apn
Details ] Diff ]
0028439: Configuration - compilation error when using thread_local within XCode 7 or earlier

__has_feature(cxx_thread_local) check has been added
for using thread_local keyword within CLang.
mod - adm/cmake/occt_defs_flags.cmake Diff ] File ]
mod - src/Standard/Standard_Failure.cxx Diff ] File ]

- Issue History
Date Modified Username Field Change
2017-02-03 19:54 kgv New Issue
2017-02-03 19:54 kgv Assigned To => kgv
2017-02-03 19:58 git Note Added: 0063428
2017-02-03 19:58 kgv Note Added: 0063429
2017-02-03 19:58 kgv Assigned To kgv => abv
2017-02-03 19:58 kgv Status new => resolved
2017-02-03 19:59 kgv Relationship added child of 0028217
2017-02-03 22:36 abv Note Added: 0063433
2017-02-03 22:36 abv Assigned To abv => bugmaster
2017-02-03 22:36 abv Status resolved => reviewed
2017-02-06 16:59 apv Assigned To bugmaster => apv
2017-02-07 12:52 apv Note Added: 0063483
2017-02-07 12:52 apv Assigned To apv => kgv
2017-02-07 12:52 apv Status reviewed => assigned
2017-02-07 12:53 apv Note Added: 0063484
2017-02-07 14:16 git Note Added: 0063488
2017-02-07 14:17 abv Note Added: 0063489
2017-02-07 14:17 abv Assigned To kgv => bugmaster
2017-02-07 14:17 abv Status assigned => resolved
2017-02-07 14:19 git Note Added: 0063491
2017-02-07 14:19 kgv Note Added: 0063492
2017-02-07 14:19 kgv Status resolved => reviewed
2017-02-07 14:56 apv Assigned To bugmaster => apv
2017-02-09 10:39 apv Test case number => Not needed
2017-02-09 11:16 apv Note Added: 0063722
2017-02-09 11:16 apv Assigned To apv => bugmaster
2017-02-09 11:16 apv Status reviewed => tested
2017-02-10 14:33 apn Changeset attached => occt master dace4784
2017-02-10 14:33 apn Assigned To bugmaster => apn
2017-02-10 14:33 apn Status tested => verified
2017-02-10 14:33 apn Resolution open => fixed
2017-03-20 14:35 git Note Added: 0064496
2017-07-29 11:57 kgv Relationship added parent of 0028502
2017-09-29 16:17 user533 Fixed in Version => 7.2.0
2017-09-29 16:28 user533 Status verified => closed


Copyright © 2000 - 2018 MantisBT Team
Powered by Mantis Bugtracker