I wrote:
> Yasuhiro Matsumoto wrote:
>
> > After Patch 7.4.1323, mingw vomit too many compilation warnings which is
> > hidden by -w flag. Below is a patch to remove them.
> >
> > https://gist.github.com/mattn/6542c52e98dce6923fc3
>
> Thanks. There are a few where I don't understand what the warning would
> be:
I now see the errors in the AppVeyor build
> --- a/src/undo.c
> +++ b/src/undo.c
> @@ -265,7 +265,7 @@ u_save(linenr_T top, linenr_T bot)
> return OK;
>
> if (top > curbuf->b_ml.ml_line_count
> - || top >= bot
> + || top - bot >= 0
> || bot > curbuf->b_ml.ml_line_count + 1)
> return FALSE; /* rely on caller to do error messages */
>
undo.c: In function 'u_save_cursor':
undo.c:268:6: warning: assuming signed overflow does not occur when assuming
that (X - c) > X is always false [-Wstrict-overflow]
|| top >= bot
^
This is bogus compiler warning, there is no overflow here. I assume
internally "top >= bot" gets replaced by "top - 1 > bot", which is wrong.
Or the compiler inlines the condition at the caller side.
Perhaps the warning goes away when we use "top == bot || top > bot"?
I don't want to actually do that though.
> --- a/src/getchar.c
> +++ b/src/getchar.c
> @@ -5218,7 +5218,7 @@ check_map(
> && s[2] != NUL)
> {
> s += 3;
> - if (len > mp->m_keylen - 3)
> + if (len - mp->m_keylen + 3 > 0)
> minlen = mp->m_keylen - 3;
> }
> if (STRNCMP(s, keys, minlen) == 0)
This is also bogus:
getchar.c: In function 'check_map':
getchar.c:5221:7: warning: assuming signed overflow does not occur when
assuming that (X - c) <= X is always true [-Wstrict-overflow]
if (len > mp->m_keylen - 3)
^
Left and right use different variables, thus the "always true" part does
not apply.
--
GALAHAD hurries to the door and pushes through it. As he leaves the room
we CUT TO the reverse to show that he is now in a room full of bathing
and romping GIRLIES, all innocent, wide-eyed and beautiful. They smile
enchantingly at him as he tries to keep walking without being diverted by
the lovely sights assaulting his eyeballs.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net \\\
/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\ an exciting new programming language -- http://www.Zimbu.org ///
\\\ help me help AIDS victims -- http://ICCF-Holland.org ///
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.