Everywhere: Use the correct literal suffixes

When performing arithmetic with long doubles/floats, we want to avoid
floating point promotion and narrowing.
This commit is contained in:
Daniel Bertalan 2021-07-05 22:23:22 +02:00 committed by Gunnar Beutner
parent b76ad3db90
commit 714bd011e1
Notes: sideshowbarker 2024-07-18 10:06:08 +09:00
2 changed files with 7 additions and 7 deletions

View file

@ -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) {

View file

@ -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);
}