aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorZyX <kp-pav@yandex.ru>2016-02-07 00:20:45 +0300
committerZyX <kp-pav@yandex.ru>2016-04-18 02:47:13 +0300
commitc27395ddc84952b94118de94af4c33f56f6beca5 (patch)
treee27f6da0dfc1f95b8076fcd9df454b31da7867cb /src
parentfa26eee85b7da5ab562ff9e57d6303a423a8c850 (diff)
downloadrneovim-c27395ddc84952b94118de94af4c33f56f6beca5.tar.gz
rneovim-c27395ddc84952b94118de94af4c33f56f6beca5.tar.bz2
rneovim-c27395ddc84952b94118de94af4c33f56f6beca5.zip
eval: Fix QuickBuild failures
Compiler used by one VM in QuickBuild has found a number of false positives. Everything is fine on travis. List of failures: From [QuickBuild][1], build [7429][2]: 14:38:19,945 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c: In function ‘assert_bool’: 14:38:19,945 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c:7551:40: error: comparison between signed and unsigned integer expressions [-Werror=sign-compare] 14:38:20,058 WARN - cc1: all warnings being treated as errors . This is not making much sense (7551:40 is `!=` in `{SpecialVarValue} != ({bool}?{SpecialVarValue}:{SpecialVarValue})`), but this error is present. --- Also fail from [build][3] [4930][4]: 15:47:00,853 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval/encode.c: In function ‘encode_read_from_list’: 15:47:00,853 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval/encode.c:258:30: error: conversion to ‘char’ from ‘int’ may alter its value [-Werror=conversion] , pointing to `:` in `{char} = ({char} == {const} ? {const} : {char})` where `{const}` is character constant like `'\n'`. I have no idea where exactly it saw conversion, so simply casted everything to (char). --- [Build][5] error: 08:32:03,472 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c: In function ‘tv_equal’: 08:32:03,472 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c:5077:1: error: control reaches end of non-void function [-Werror=return-type] --- Build [4949][7]: 11:28:00,578 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c: In function ‘f_type’: 11:28:00,578 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c:16085:24: error: ‘n’ may be used uninitialized in this function [-Werror=uninitialized] 11:28:00,581 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c: In function ‘f_empty’: 11:28:00,581 WARN - /home/quickbuild/buildagent/workspace/root/neovim/pull-requests-automated/src/nvim/eval.c:8505:24: error: ‘n’ may be used uninitialized in this function [-Werror=uninitialized] [1]: http://neovim-qb.szakmeister.net/wicket/page?5-1.ILinkListener-content-buildTab-panel-masterStep-body-children-0-step-body-children-2-body-children-3-step-body-children-0-step-body-children-0-step-head-logLink [2]: http://neovim-qb.szakmeister.net/build/4929 [3]: http://neovim-qb.szakmeister.net/build/4930 [4]: http://neovim-qb.szakmeister.net/wicket/page?1-1.ILinkListener-content-buildTab-panel-masterStep-body-children-0-step-body-children-1-body-children-3-step-body-children-0-step-body-children-0-step-head-logLink [5]: http://neovim-qb.szakmeister.net/build/4948/step_status [7]: http://neovim-qb.szakmeister.net/build/4949
Diffstat (limited to 'src')
-rw-r--r--src/nvim/eval.c14
-rw-r--r--src/nvim/eval/encode.c2
-rw-r--r--src/nvim/version.c1
3 files changed, 9 insertions, 8 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c
index 9f5a3985d3..d2a7aeb74e 100644
--- a/src/nvim/eval.c
+++ b/src/nvim/eval.c
@@ -5100,6 +5100,7 @@ tv_equal (
}
assert(false);
+ return false;
}
/*
@@ -7614,9 +7615,10 @@ static void assert_bool(typval_T *argvars, bool is_true)
if ((argvars[0].v_type != VAR_NUMBER ||
(get_tv_number_chk(&argvars[0], &error) == 0) == is_true || error)
&& (argvars[0].v_type != VAR_SPECIAL
- || argvars[0].vval.v_special != (is_true
- ?kSpecialVarTrue
- :kSpecialVarFalse))) {
+ || (argvars[0].vval.v_special
+ != (SpecialVarValue) (is_true
+ ? kSpecialVarTrue
+ : kSpecialVarFalse)))) {
prepare_assert_error(&ga);
fill_assert_error(&ga, &argvars[1],
(char_u *)(is_true ? "True" : "False"),
@@ -8535,7 +8537,7 @@ static void f_diff_hlID(typval_T *argvars, typval_T *rettv)
*/
static void f_empty(typval_T *argvars, typval_T *rettv)
{
- bool n;
+ bool n = true;
switch (argvars[0].v_type) {
case VAR_STRING:
@@ -8562,7 +8564,6 @@ static void f_empty(typval_T *argvars, typval_T *rettv)
break;
case VAR_UNKNOWN:
EMSG2(_(e_intern2), "f_empty(UNKNOWN)");
- n = true;
break;
}
@@ -16215,7 +16216,7 @@ static void f_trunc(typval_T *argvars, typval_T *rettv)
*/
static void f_type(typval_T *argvars, typval_T *rettv)
{
- int n;
+ int n = -1;
switch (argvars[0].v_type) {
case VAR_NUMBER: n = 0; break;
@@ -16240,7 +16241,6 @@ static void f_type(typval_T *argvars, typval_T *rettv)
}
case VAR_UNKNOWN: {
EMSG2(_(e_intern2), "f_type(UNKNOWN)");
- n = -1;
break;
}
}
diff --git a/src/nvim/eval/encode.c b/src/nvim/eval/encode.c
index b29a4c6f21..8280889fbe 100644
--- a/src/nvim/eval/encode.c
+++ b/src/nvim/eval/encode.c
@@ -255,7 +255,7 @@ int encode_read_from_list(ListReaderState *const state, char *const buf,
while (p < buf_end) {
for (size_t i = state->offset; i < state->li_length && p < buf_end; i++) {
const char ch = (char) state->li->li_tv.vval.v_string[state->offset++];
- *p++ = (ch == NL ? NUL : ch);
+ *p++ = (char) ((char) ch == (char) NL ? (char) NUL : (char) ch);
}
if (p < buf_end) {
state->li = state->li->li_next;
diff --git a/src/nvim/version.c b/src/nvim/version.c
index 8814a592cf..106cc8d1d8 100644
--- a/src/nvim/version.c
+++ b/src/nvim/version.c
@@ -78,6 +78,7 @@ static int included_patches[] = {
1511,
1425,
1366,
+ 1292,
1284,
// 1283
1282,