16 lines
659 B
YAML
16 lines
659 B
YAML
|
define: DUK_USE_PARANOID_DATE_COMPUTATION
|
||
|
introduced: 1.0.0
|
||
|
default: false # XXX: make default detect C99/C++11?
|
||
|
tags:
|
||
|
- portability
|
||
|
description: >
|
||
|
There was a curious bug where test-bi-date-canceling.js would fail e.g.
|
||
|
on 64-bit Ubuntu, gcc-4.8.1, -m32, and no -std=c99. Some date computations
|
||
|
using doubles would be optimized which then broke some corner case tests.
|
||
|
The problem goes away by adding 'volatile' to the datetime computations.
|
||
|
Not sure what the actual triggering conditions are, but using this on
|
||
|
non-C99 systems solves the known issues and has relatively little cost
|
||
|
on other platforms.
|
||
|
|
||
|
Recommended for non-C99 platforms.
|