D float types operations vs C++ ones
Ali Çehreli via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Thu Dec 17 08:34:27 PST 2015
On 12/17/2015 03:50 AM, drug wrote:
> D and C++ [...] But with some data the results differ
You may have similar results between two C and two C++ compilers, even
between two different versions of the same compiler.
In addition to possible reasons that has already been mentioned, note
that function arguments can be evaluated in any order by compilers of C
and C++ (D uses left-to-right). For example, for the following
expression, gcc evaluates bar() first but dmd (and other D compilers)
evaluate foo() first:
h(foo(), bar())
If foo() and bar() have side effects on floating values, those values
can be observed differently.
Ali
More information about the Digitalmars-d-learn
mailing list