| Anonymous | Login | Signup for a new account | 2013-05-19 02:45 CEST | ![]() |
| Main | My View | View Issues | Change Log | Roadmap |
| View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||||
| ID | Project | Category | View Status | Date Submitted | Last Update | ||||||
| 0005193 | OCaml | OCaml otherlibs | public | 2010-12-10 19:16 | 2012-09-19 14:29 | ||||||
| Reporter | till | ||||||||||
| Assigned To | |||||||||||
| Priority | normal | Severity | minor | Reproducibility | have not tried | ||||||
| Status | acknowledged | Resolution | open | ||||||||
| Platform | OS | OS Version | |||||||||
| Product Version | |||||||||||
| Target Version | later | Fixed in Version | |||||||||
| Summary | 0005193: Make unix.{localtime,gmtime} use non reentrant c calls | ||||||||||
| Description | Attached is a patch to make it call out to {localtime,gmtime}_r which are the reentrant versions of these calls. | ||||||||||
| Tags | No tags attached. | ||||||||||
| Attached Files | |||||||||||
Notes |
|
|
(0005733) till (reporter) 2010-12-10 19:17 |
oops the category should have been the compiler. Please reassign. |
|
(0005752) xleroy (administrator) 2010-12-22 15:05 |
This change has been proposed before, but I am reluctant to implement it, for several reasons: - gmtime_r() is "less standard" than gmtime(), the latter being in ISO C. - All C libraries worth their salt implement gmtime() using thread-local storage, and are therefore thread-safe. - Two gmtime() calls from Caml cannot execute concurrently because of the global lock, so the only risk of a race is with a gmtime() executing concurrently in a C thread. All in all, I'd rather not change the current code until the problem above manifests itself in practice. |
Issue History |
|||
| Date Modified | Username | Field | Change |
| 2010-12-10 19:16 | till | New Issue | |
| 2010-12-10 19:16 | till | Status | new => assigned |
| 2010-12-10 19:16 | till | Assigned To | => guesdon |
| 2010-12-10 19:16 | till | File Added: reentrant.patch | |
| 2010-12-10 19:17 | till | Note Added: 0005733 | |
| 2010-12-14 16:10 | doligez | Assigned To | guesdon => |
| 2010-12-14 16:10 | doligez | Status | assigned => acknowledged |
| 2010-12-14 16:10 | doligez | Category | OCamldoc => OCaml general |
| 2010-12-22 15:05 | xleroy | Note Added: 0005752 | |
| 2012-07-10 17:18 | doligez | Target Version | => 4.01.0+dev |
| 2012-07-31 13:36 | doligez | Target Version | 4.01.0+dev => 4.00.1+dev |
| 2012-09-19 14:29 | doligez | Category | OCaml general => OCaml otherlibs |
| 2012-09-19 14:29 | doligez | Target Version | 4.00.1+dev => later |
| Copyright © 2000 - 2011 MantisBT Group |