Parcourir la source

Everywhere: Use the correct literal suffixes

When performing arithmetic with long doubles/floats, we want to avoid
floating point promotion and narrowing.
Daniel Bertalan il y a 4 ans
Parent
commit
714bd011e1
2 fichiers modifiés avec 7 ajouts et 7 suppressions
  1. 5 5
      AK/Format.cpp
  2. 2 2
      Userland/Libraries/LibGUI/ColorPicker.cpp

+ 5 - 5
AK/Format.cpp

@@ -394,7 +394,7 @@ void FormatBuilder::put_f80(
     StringBuilder string_builder;
     FormatBuilder format_builder { string_builder };
 
-    bool is_negative = value < 0.0;
+    bool is_negative = value < 0.0l;
     if (is_negative)
         value = -value;
 
@@ -406,16 +406,16 @@ void FormatBuilder::put_f80(
         // https://youtu.be/4P_kbF0EbZM (Stephan T. Lavavej “Floating-Point <charconv>: Making Your Code 10x Faster With C++17's Final Boss”)
         value -= static_cast<i64>(value);
 
-        long double epsilon = 0.5;
+        long double epsilon = 0.5l;
         for (size_t i = 0; i < precision; ++i)
-            epsilon /= 10.0;
+            epsilon /= 10.0l;
 
         size_t visible_precision = 0;
         for (; visible_precision < precision; ++visible_precision) {
             if (value - static_cast<i64>(value) < epsilon)
                 break;
-            value *= 10.0;
-            epsilon *= 10.0;
+            value *= 10.0l;
+            epsilon *= 10.0l;
         }
 
         if (visible_precision > 0) {

+ 2 - 2
Userland/Libraries/LibGUI/ColorPicker.cpp

@@ -465,9 +465,9 @@ void ColorField::create_color_bitmap()
     Gfx::HSV hsv;
     hsv.hue = m_hue;
     for (int x = 0; x < 256; x++) {
-        hsv.saturation = x / 255.0f;
+        hsv.saturation = x / 255.0;
         for (int y = 0; y < 256; y++) {
-            hsv.value = (255 - y) / 255.0f;
+            hsv.value = (255 - y) / 255.0;
             Color color = Color::from_hsv(hsv);
             painter.set_pixel({ x, y }, color);
         }