aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
Commit message (Collapse)AuthorAge
...
* | | eval: Do not break when VimVarIndex and vimvars order mismatchesZyX2016-04-18
| | | | | | | | | | | | Also makes sure that compiler will error out when new name is longer then vv_filler.
* | | eval: Rename json* functions to json_*ZyX2016-04-18
| | |
* | | api: Replace set_var(name, NIL) with del_var(name)ZyX2016-04-18
| | |
* | | eval: Fix QuickBuild failuresZyX2016-04-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* | | eval: Port parts of 7.4.1267 that are not already presentZyX2016-04-18
| | |
* | | eval: Make assert_true and assert_false accept v:true and v:falseZyX2016-04-18
| | |
* | | *: Fix linter errorsZyX2016-04-18
| | |
* | | eval: Remove v:noneZyX2016-04-18
| | | | | | | | | | | | | | | To get v:none back just rever this commit. This will not make json*() functions compatible with Vim though.
* | | eval: Remove get_vim_var_tv functionZyX2016-04-18
| | |
* | | eval: Move some decoding functions to eval/decode.cZyX2016-04-18
| | |
* | | eval: Get rid of VV_LEN constantZyX2016-04-18
| | |
* | | eval: Move encode.c to eval/encode.cZyX2016-04-18
| | |
* | | eval: Add jsondecode() functionZyX2016-04-18
| | |
* | | eval: Add special variables v:false, v:null, v:noneZyX2016-04-18
| | |
* | | eval: Add special variable typeZyX2016-04-18
| | |
* | | eval: Add jsonencode() functionZyX2016-04-18
| | | | | | | | | Ref #3471
* | | eval: Split out typval_T dumping functions to nvim/encode.cZyX2016-04-18
| |/ |/|
* | eval.c: Fix heap corruption error when constructing sourcing_nameoni-link2016-04-17
| | | | | | | | | | | | | | | | | | A wrong format specifier and not enough allocated memory for sourcing_name could lead to a heap corruption. Original patch by Rui Abreu Ferreira (@equalsraf) Fixes #4582
* | eval.c: Fix cut off of terminal exit messageoni-link2016-04-17
| | | | | | | | | | The message array in on_process_exit() is too short for a status > 99.
* | Merge pull request #4357 from jbradaric/vim-7.4.1105Justin M. Keyes2016-04-09
|\ \ | | | | | | vim-patch:7.4.1105
| * | eval: Fix linter error.Jurica Bradaric2016-02-27
| | |
| * | vim-patch:7.4.1105Jurica Bradaric2016-02-27
| | | | | | | | | | | | | | | | | | | | | Problem: When using slices there is a mixup of variable name and namespace. Solution: Recognize variables that can't be a namespace. (Hirohito Higashi) https://github.com/vim/vim/commit/9bbf63dbf8286fadc0cd6b3428010abb67b1b64d
* | | vim-patch:7.4.1654James McCoy2016-03-30
| | | | | | | | | | | | | | | | | | | | | Problem: Crash when using expand('%:S') in a buffer without a name. Solution: Don't set a NUL. (James McCoy, closes vim/vim#714) https://github.com/vim/vim/commit/52c6eaffd43a8c8865f8d6ed7cde0a8b137479e2
* | | vim-patch:7.4.1643James McCoy2016-03-30
| | | | | | | | | | | | | | | | | | | | | Problem: Terminating file name has side effects. Solution: Restore the character. (mostly by James McCoy, closes vim/vim#713) https://github.com/vim/vim/commit/d4caf5c16a9f1c9477d426e58d8d3dc47ab5f066
* | | vim-patch:7.4.1641James McCoy2016-03-30
| | | | | | | | | | | | | | | | | | | | | Problem: Using unterminated string. Solution: Add NUL before calling vim_strsave_shellescape(). (James McCoy) https://github.com/vim/vim/commit/5ca84ce4aa2832041f843e624c222bbc1f4d3e14
* | | Proper type checking for set{qf,loc}list()Marco Hinz2016-03-02
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | Prior to this change, type errors were silently ignored. They're explicit now. setqflist(list, action, title) setloclist(win, list, action, title) "list" (required) must be a list. "action" (optional) must a string. "title" (optional) must a string or number that gets converted to a string. An error is thrown otherwise.
* | Correct max numbers of args for some functionsMarco Hinz2016-03-01
| | | | | | | | Closes #3650.
* | ops.c: breakout shared register type formatting codeBjörn Linse2016-02-29
| |
* | eval: add v:event, which will contain data events want to propagate to their ↵Björn Linse2016-02-29
| | | | | | | | | | | | receivers. Add helper functions dict_clear and dict_set_keys_readonly.
* | Merge pull request #3900 from ZyX-I/inf-nan-stringJustin M. Keyes2016-02-28
|\ \ | |/ |/| Make it possible to eval() all floating-point values dumped by string()
| * eval: Return different values when dividing by zeroZyX2016-02-02
| | | | | | | | Fixes #3263
| * eval: Use str2float() to represent inf and nan valuesZyX2016-02-02
| | | | | | Closes #3248
* | Avoid internal errors with setloclist()Marco Hinz2016-02-26
| | | | | | | | | | | | | | | | | | | | | | | | | | All syntastic users experienced this problem: E685: Internal error: get_tv_string_buf() It's reproducable with: :call setloclist(0, ['']) So, not given optional arguments to setloclist() lead to some fields not inizilied and the code took the wrong branches.
* | Make set{qf,loc}list() take {title}Marco Hinz2016-02-25
| | | | | | | | | | | | | | | | | | | | Add an extra argument to these functions to set w:quickfix_title. This is a modified version of a patch from vim_dev. Discussion here: https://groups.google.com/forum/#!topic/vim_dev/X7VVPd4Do5s Credits go to Christian "chrisbra" Brabandt and Daniel "blueyed" Hahler.
* | set_vim_var_dict: Allow NULL `val`.Justin M. Keyes2016-02-23
| | | | | | | | Closes #3006
* | Merge pull request #4259 from watiko/vim-7.4.881Justin M. Keyes2016-02-22
|\ \ | | | | | | vim-patch:7.4.{879,881}
| * | vim-patch:7.4.879watiko2016-02-15
| | | | | | | | | | | | | | | | | | | | | Problem: Can't see line numbers in nested function calls. Solution: Add line number to the file name. (Alberto Fanjul) https://github.com/vim/vim/commit/1d6328ca00fc6cfe37b1f5e038ec23f443258886
* | | Make TermClose event return the associated bufferMarco Hinz2016-02-21
| | | | | | | | | | | | | | | | | | | | | <abuf> from the TermClose event now returns the correct buffer number. Prior to this change it would always return the buffer number of the current buffer, which is obviously wrong in an async environment.
* | | Merge pull request #4240 from jbradaric/vim-7.4.888Justin M. Keyes2016-02-19
|\ \ \ | | | | | | | | vim-patch:7.4.888
| * | | eval: Fix linter error.Jurica Bradaric2016-02-15
| | | |
| * | | vim-patch:7.4.888Jurica Bradaric2016-02-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The OptionSet autocommands are not triggered from setwinvar(). Solution: Do not use switch_win() when not needed. (Hirohito Higashi) https://github.com/vim/vim/commit/ba117c23dfd1146aca3235bea172df17a48bccee
* | | | vim-patch:7.4.844 #4228Jurica Bradaric2016-02-17
|/ / / | | | | | | | | | | | | | | | | | | Problem: When '#' is in 'isident' the is# comparator doesn't work. Solution: Don't use vim_isIDc(). (Yasuhiro Matsumoto) https://github.com/vim/vim/commit/37a8de17d4dfd3d463960c38a204ce399c8e19d4
* / / vim-patch:7.4.792watiko2016-02-11
|/ / | | | | | | | | | | | | Problem: Can only conceal text by defining syntax items. Solution: Use matchadd() to define concealing. (Christian Brabandt) https://github.com/vim/vim/commit/6561d52ecbe6e24d1b90403078cc8b76c53c42fc
* | vim-patch:7.4.834Jurica Bradaric2016-02-09
| | | | | | | | | | | | | | Problem: gettabvar() doesn't work after Vim start. (Szymon Wrozynski) Solution: Handle first window in tab still being NULL. (Christian Brabandt) https://github.com/vim/vim/commit/7e47d1ac6a9ae0e5a7167aa34ff651a9c39c1641
* | Merge pull request #4178 from watiko/vim-7.4.708Justin M. Keyes2016-02-09
|\ \ | | | | | | vim-patch:7.4.{708,717}
| * | vim-patch:7.4.717watiko2016-02-06
| | | | | | | | | | | | | | | | | | | | | Problem: ":let list += list" can change a locked list. Solution: Check for the lock earlier. (Olaf Dabrunz) https://github.com/vim/vim/commit/1cd5e613b0d8947d52762af0e17351d5e49869de
| * | vim-patch:7.4.708watiko2016-02-06
| | | | | | | | | | | | | | | | | | | | | | | | Problem: gettext() is called too often. Solution: Do not call gettext() for messages until they are actually used. (idea by Yasuhiro Matsumoto) https://github.com/vim/vim/commit/77354e78a887e1b59ac519c5a1cb0e7fe9fc5899
* | | Merge #4152 'vim-patch:7.4.{798,800,805,810,811,814,815,816,817,820,825}'.Justin M. Keyes2016-02-09
|\ \ \
| * | | vim-patch:7.4.816Jurica Bradaric2016-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Invalid memory access when doing ":fun X(". Solution: Check for missing ')'. (Dominique Pelle) https://github.com/vim/vim/commit/dd8a5286e191d23410c5970a0f17f01c7ff1211b
| * | | vim-patch:7.4.815Jurica Bradaric2016-02-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: Invalid memory access when doing ":call g:". Solution: Check for an empty name. (Dominique Pelle) https://github.com/vim/vim/commit/73627d0bd43e63a67995ab1c826f1cec4ed22560