http://bugs.winehq.org/show_bug.cgi?id=28422
--- Comment #16 from Alan W. Irwin irwin@beluga.phys.uvic.ca 2012-11-04 13:48:43 CST --- @Alexandre Julliard: I have attached a simple test case that illustrates the issue. I will leave it to Piotr to forward this test case and any patch he decides is the right fix for the problem to wine-patches since I would prefer to concentrate on developing my own free software rather than wine.
@Piotr Caban: but powl is part of c99 and completely supported by gcc. Are there _any_ C compilers out there anymore that don't support c99? I can see why with such a huge Wine code base you don't want to mandate c99, but does that mean you also must prohibit it? If the answer to that question is "unfortunately yes", then you will have to figure out some other alternative for taking the power in long double precision.
Also, you said "scanf also needs to use fpcontrol functions in similar way as strtod." I frankly don't understand that comment since I am not that familiar with Wine. This additional issue affects none of my extensive tests, but I am sure (since you are familiar with Wine) you must be right and my tests are incomplete in this respect. In sum, I leave it to you to go ahead and make the definitive patch that solves precision issue due to using pow rather than the correct powl as well as this additional "fpcontrol" issue you have identified. I would be happy to test your definitive additional patch for wine-git with my ephcom software when it is ready.