aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config/CMakeLists.txt1
-rw-r--r--src/nvim/charset.c4
-rw-r--r--src/nvim/hardcopy.c4
3 files changed, 7 insertions, 2 deletions
diff --git a/config/CMakeLists.txt b/config/CMakeLists.txt
index aab4b5c23d..a46f686d7c 100644
--- a/config/CMakeLists.txt
+++ b/config/CMakeLists.txt
@@ -5,6 +5,7 @@ include(CheckIncludeFiles)
check_type_size("int" SIZEOF_INT)
check_type_size("long" SIZEOF_LONG)
+check_type_size("intmax_t" SIZEOF_INTMAX_T)
check_type_size("off_t" SIZEOF_OFF_T)
check_type_size("void *" SIZEOF_VOID_PTR)
diff --git a/src/nvim/charset.c b/src/nvim/charset.c
index b3d0949722..b86c66c3fe 100644
--- a/src/nvim/charset.c
+++ b/src/nvim/charset.c
@@ -1695,7 +1695,9 @@ intmax_t getdigits(char_u **pp)
int getdigits_int(char_u **pp)
{
intmax_t number = getdigits(pp);
+#if SIZEOF_INTMAX_T > SIZEOF_INT
assert(number >= INT_MIN && number <= INT_MAX);
+#endif
return (int)number;
}
@@ -1705,7 +1707,9 @@ int getdigits_int(char_u **pp)
long getdigits_long(char_u **pp)
{
intmax_t number = getdigits(pp);
+#if SIZEOF_INTMAX_T > SIZEOF_LONG
assert(number >= LONG_MIN && number <= LONG_MAX);
+#endif
return (long)number;
}
diff --git a/src/nvim/hardcopy.c b/src/nvim/hardcopy.c
index 993ec143bb..92abcbada4 100644
--- a/src/nvim/hardcopy.c
+++ b/src/nvim/hardcopy.c
@@ -14,6 +14,7 @@
#include <errno.h>
#include <string.h>
#include <inttypes.h>
+#include <stdint.h>
#include "nvim/vim.h"
#include "nvim/ascii.h"
@@ -726,8 +727,7 @@ void ex_hardcopy(exarg_T *eap)
if (got_int || settings.user_abort)
goto print_fail;
- assert(prtpos.bytes_printed == 0
- || prtpos.bytes_printed * 100 > prtpos.bytes_printed);
+ assert(prtpos.bytes_printed <= SIZE_MAX / 100);
sprintf((char *)IObuff, _("Printing page %d (%zu%%)"),
page_count + 1 + side,
prtpos.bytes_printed * 100 / bytes_to_print);