Date: Saturday, January 21, 2006 @ 01:52:52
  Author: marc
    Path: /cvsroot/carob/carob/src

Modified: ParameterStatement.cpp (1.6 -> 1.7)

Better floating .precision() but still fundamentally flawed: conversion to base 
10 implies rounding errors (CAROB-31)


------------------------+
 ParameterStatement.cpp |    3 +++
 1 files changed, 3 insertions(+)


Index: carob/src/ParameterStatement.cpp
diff -u carob/src/ParameterStatement.cpp:1.6 
carob/src/ParameterStatement.cpp:1.7
--- carob/src/ParameterStatement.cpp:1.6        Fri Jan 20 23:55:17 2006
+++ carob/src/ParameterStatement.cpp    Sat Jan 21 01:52:52 2006
@@ -146,6 +146,9 @@
     
   std::wostringstream buffer;
   buffer.imbue(locC);
+  buffer.setf(std::ios_base::scientific, std::ios_base::floatfield);
+  buffer.precision(18); // std::numeric_limits<double>::digits10 + some
+
   buffer << START_PARAM_TAG << typeTag << value << END_PARAM_TAG;
   inStrings[paramIndex-1] = buffer.str();
 }

_______________________________________________
Carob-commits mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/carob-commits

Reply via email to