| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
| |
It is less error-prone than manually defining header guards. Pretty much
all compilers support it even if it's not part of the C standard.
|
|
|
|
|
|
|
| |
We already have an extensive suite of static analysis tools we use,
which causes a fair bit of redundancy as we get duplicate warnings. PVS
is also prone to give false warnings which creates a lot of work to
identify and disable.
|
|
|
|
|
|
| |
Problem: The style guide states that all switch statements that are not conditional on an enum must have a `default` case, but does not give any explicit guideline for switch statements that are conditional on enums. As a result, a `default` case is added in many enum switch statements, even when the switch statement is exhaustive. This is not ideal because it removes the ability to have compiler errors to easily detect unchanged switch statements when a new possible value for an enum is added.
Solution: Add explicit guidelines for switch statements that are conditional on an enum, clarifying that a `default` case is not necessary if the switch statement is exhaustive. Also refactor pre-existing code with unnecessary `default` cases.
|
|
|
|
| |
Also remove some stray comments.
|
| |
|
|
|
| |
It is not needed in Nvim. Ref #6068
|
|
|
|
|
|
|
| |
Problem: Macros for MS-Windows are inconsistent, using "32", "3264 and
others.
Solution: Use MSWIN for all MS-Windows builds. Use FEAT_GUI_MSWIN for the
GUI build. (Hirohito Higashi, closes vim/vim#3932)
https://github.com/vim/vim/commit/4f97475d326c2773a78561fb874e4f23c25cbcd9
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
| |
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* fix(PVS/V547): remove ifs that are always true or false
* fix(PVS/V560): remove partial conditions that are always true
* fix(PVS/V1044): suppress warning about loop break conditions
* fix(PVS/V1063): suppress "modulo by 1 operation is meaningless"
* fix(PVS/V568): suppress "operator evaluates the size of a pointer"
Also mark vim-patch:8.2.4958 as ported.
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
|
| |
Work on https://github.com/neovim/neovim/issues/459
|
|
|
| |
Closes https://github.com/neovim/neovim/issues/6297
|
|
|
|
|
|
| |
Problem: Missing parenthesis may cause unexpected problems.
Solution: Add more parenthesis is macros.
https://github.com/vim/vim/commit/ae6f1d8b14c2f63811ee83ef14e32086fb3e9b83
|
|
|
|
|
|
| |
Problem: Not sufficient parenthesis in preprocessor macros.
Solution: Add more parenthesis.
https://github.com/vim/vim/commit/9dac9b1751dd43c02470cc6a2aecaeea27abcc80
|
|
|
|
|
|
|
|
| |
This includes a partial port of Vim patch 8.2.2569 and some changes to
nvim_eval_statusline() to allow a multibyte fillchar. Literally every
line of C code touched by that patch has been refactored in Nvim, and
that patch contains some irrelevant foldcolumn tests I'm not sure how to
port (as Nvim's foldcolumn behavior has diverged from Vim's).
|
|
|
| |
* refactor: reduce number of explicit char casts
|
|
|
|
| |
clean up docs for MB_PTR_ADV and MB_PTR_BACK
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* refactor: format all C files under nvim
* refactor: disable formatting for Vim-owned files:
* src/nvim/indent_c.c
* src/nvim/regexp.c
* src/nvim/regexp_nfa.c
* src/nvim/testdir/samples/memfile_test.c
|
| |
|
| |
|
|
|
|
|
| |
The warning is triggered by the second division when arr is a char array
since sizeof(char) is 1. A modulo by 1 may normally indicate a logic
error, but in this case it's intended.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Problem: Cannot get the search statistics.
Solution: Add the searchcount() function. (Fujiwara Takuya, closes vim/vim#4446)
https://github.com/vim/vim/commit/e8f5ec0d30b629d7166f0ad03434065d8bc822df
Additional changes:
- Tests weren't passing because the test ran assuming the cursor was at
start of buffer but append() left the cursor at end of buffer .
So cursor is moved to start of buffer after append.
- searchcount() added to list of builtin functions.
|
|
|
| |
Closes #13505.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Per GCC's documentation:
> The __has_include operator by itself, without any operand or parentheses, acts as a predefined macro so that support for it can be tested in portable code. Thus, the recommended use of the operator is as follows:
>
> #if defined __has_include
> # if __has_include (<stdatomic.h>)
> # include <stdatomic.h>
> # endif
> #endif
>
> The first ‘#if’ test succeeds only when the operator is supported by the version of GCC (or another compiler) being used. Only when that test succeeds is it valid to use __has_include as a preprocessor operator.
|
|
|
|
|
|
| |
This is code generated by gperf, so there's nothing we can do about it.
The code does have /*FALLTHROUGH*/ comments but clang doesn't recognize
them.
|
|
|
|
|
|
| |
Problem: Using old C style comments.
Solution: Use // comments where appropriate.
https://github.com/vim/vim/commit/9bf703d46a79fbffeb829246ea5ce385bddc4166
|
|
|
|
|
|
|
| |
Problem: Some MB_ macros are more complicated than necessary. (Dominique
Pelle)
Solution: Simplify the macros. Expand inline.
https://github.com/vim/vim/commit/1614a14901558ca091329315d14a7d5e1b53aa47
|
|
|
|
|
|
|
| |
Problem: Cannot get the script line number when executing a function.
Solution: Store the line number besides the script ID. (Ozaki Kiichi,
closes vim/vim#3362) Also display the line number with ":verbose set".
https://github.com/vim/vim/commit/f29c1c6aa3f365c025890fab5fb9efbe88eb1761
|
|
|
|
|
|
| |
Problem: Mac features are confusing.
Solution: Make feature names more consistent, add "osxdarwin". Rename
feature flags, cleanup Mac code. (Kazunobu Kuriyama, closes vim/vim#2178)
https://github.com/vim/vim/commit/d057301b1f28736f094affa17b190244ad56e8d9
|
|\
| |
| | |
vim-patch:8.1.{1005,1041,1049,1052,1053,1086,1394}
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Problem: Too many curly braces.
Solution: Remove curly braces where they are not needed. (Hirohito Higashi,
closes vim/vim#3982)
https://github.com/vim/vim/commit/abab0b0fdd6535969447b03a4fffc1947918cf6c
Neovim code style requires the opposite.
Add curly braces to minimize lint errors when applying Vim patches.
|
|/ |
|
| |
|
|
|
|
|
|
|
| |
Windows: Using fopen() directly may need UTF-16 filepath conversion. To
achieve that, os_fopen() goes through os_open().
fix #10586
|
|
|
|
|
|
|
|
|
|
|
|
| |
On Travis CI, -Wmissing-prototypes gives strange error:
In file included from ../src/nvim/eval.c:5965:
/home/travis/build/neovim/neovim/build/src/nvim/auto/funcs.generated.h.gperf:215:1: error: conflicting types for 'find_internal_func_gperf'
find_internal_func_gperf (register const char *str, register unsigned int len)
^
../src/nvim/eval.c:5962:20: note: previous declaration is here
const VimLFuncDef *find_internal_func_gperf(register const char *str,
^
|
| |
|
| |
|
|
|
|
|
|
|
| |
First step towards implemening issue #7401.
The same can be done for all deprecated mb_ functions in follow-up
patches.
|
|
|
|
|
|
|
| |
Problem: Some macros are in lower case.
Solution: Make a few more macros upper case. Avoid lower case macros use an
argument twice.
https://github.com/vim/vim/commit/91acfffc1e6c0d8c2abfb186a0e79a5bf19c3f3f
|
| |
|
|
|
|
|
|
|
| |
Problems so far:
- Marks in the current instance are not adjusted.
- Duplicates are not removed (not that it works in Vim either now, not at
8.0.134 at least).
|