From 097e2f9d0aa0dc7f1c4a7cff52260944db28e3c8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Marko=20M=C3=A4kel=C3=A4?= Date: Mon, 16 Mar 2020 16:51:35 +0200 Subject: [PATCH] MDEV-16188: Fix clang 10 -Wimplicit-int-float-conversion mi_records_in_range(): Because HA_POS_ERROR cannot be accurately represented in double (it will be off by one), add an explicit cast to silence the warning. --- storage/myisam/mi_range.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/storage/myisam/mi_range.c b/storage/myisam/mi_range.c index 25c79b9789f..7292f3c83b8 100644 --- a/storage/myisam/mi_range.c +++ b/storage/myisam/mi_range.c @@ -1,5 +1,6 @@ /* Copyright (c) 2000, 2011, Oracle and/or its affiliates + Copyright (c) 2010, 2020, MariaDB Corporation. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -104,7 +105,7 @@ ha_rows mi_records_in_range(MI_INFO *info, int inx, : (double) info->state->records); res= (end_pos < start_pos ? (ha_rows) 0 : (end_pos == start_pos ? (ha_rows) 1 : (ha_rows) (end_pos-start_pos))); - if (start_pos == HA_POS_ERROR || end_pos == HA_POS_ERROR) + if (start_pos == (double) HA_POS_ERROR || end_pos == (double) HA_POS_ERROR) res=HA_POS_ERROR; else {