diff options
author | Tristan Gingold <tgingold@free.fr> | 2017-04-18 05:05:20 +0200 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2017-04-19 20:48:24 +0200 |
commit | 464259ae4be27dcf43f3273e2217cb226bebdc71 (patch) | |
tree | d1d02c5892a516e5144f888b2e9264e34f399da7 /src/grt/grt-vstrings.adb | |
parent | 99c6e3e3b91e60e9f79195e5c36e217ff2196e50 (diff) | |
download | ghdl-464259ae4be27dcf43f3273e2217cb226bebdc71.tar.gz ghdl-464259ae4be27dcf43f3273e2217cb226bebdc71.tar.bz2 ghdl-464259ae4be27dcf43f3273e2217cb226bebdc71.zip |
Rewrite to_string(real, digits) using grt.fcvt
Diffstat (limited to 'src/grt/grt-vstrings.adb')
-rw-r--r-- | src/grt/grt-vstrings.adb | 16 |
1 files changed, 5 insertions, 11 deletions
diff --git a/src/grt/grt-vstrings.adb b/src/grt/grt-vstrings.adb index 544626f46..b9fd0b8bb 100644 --- a/src/grt/grt-vstrings.adb +++ b/src/grt/grt-vstrings.adb @@ -268,22 +268,16 @@ package body Grt.Vstrings is Grt.Fcvt.Format_Image (Str, Last, Interfaces.IEEE_Float_64 (N)); end To_String; - procedure To_String (Str : out String_Real_Digits; + procedure To_String (Str : out String; Last : out Natural; N : Ghdl_F64; - Nbr_Digits : Ghdl_I32) - is - procedure Snprintf_Nf (Str : in out String; - Len : Natural; - Ndigits : Ghdl_I32; - V : Ghdl_F64); - pragma Import (C, Snprintf_Nf, "__ghdl_snprintf_nf"); + Nbr_Digits : Ghdl_I32) is begin - Snprintf_Nf (Str, Str'Length, Nbr_Digits, N); - Last := strlen (To_Ghdl_C_String (Str'Address)); + Grt.Fcvt.Format_Digits + (Str, Last, Interfaces.IEEE_Float_64 (N), Natural (Nbr_Digits)); end To_String; - procedure To_String (Str : out String_Real_Digits; + procedure To_String (Str : out String_Real_Format; Last : out Natural; N : Ghdl_F64; Format : Ghdl_C_String) |