From b84711c5366463ed2d38dafc1a89aef66dcc7fa3 Mon Sep 17 00:00:00 2001 From: Boris Kolpackov Date: Wed, 8 Apr 2009 15:16:26 +0200 Subject: Make the default value a floating-point literal We cannot append the F suffix to an integer constant. --- xsde/cxx/hybrid/default-value.cxx | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/xsde/cxx/hybrid/default-value.cxx b/xsde/cxx/hybrid/default-value.cxx index 8c570cf..e232eae 100644 --- a/xsde/cxx/hybrid/default-value.cxx +++ b/xsde/cxx/hybrid/default-value.cxx @@ -94,6 +94,16 @@ namespace CXX s.resize (j); } + + Void + make_float (String& s) + { + if (s.find ('.') == String::npos && + s.find ('e') == String::npos && + s.find ('E') == String::npos) + s += L".0"; + } + } // @@ -259,6 +269,7 @@ namespace CXX else { strip_zeros (value_); + make_float (value_); literal_ = value_ + L"F"; } } @@ -283,6 +294,7 @@ namespace CXX else { strip_zeros (value_); + make_float (value_); literal_ = value_; } } @@ -292,6 +304,7 @@ namespace CXX { collapse (value_); strip_zeros (value_); + make_float (value_); literal_ = value_; } -- cgit v1.1