| Commit message (Collapse) | Author | Age |
... | |
| |
|
|\
| |
| | |
[RDY] Remove references to FEAT_{X11,CLIPBOARD} and USE_XSMP.
|
|/ |
|
|
|
|
| |
With the improved cimport helper, we can just load what we want.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit will hopefully allow the cimport method to be used just as one
would use #inclue <header.h> in C. It follows the following method:
1. create a pseudoheader file that #include's all the requested header files
2. runs the pseudoheader through the C preprocessor (it will try various
compilers if available on the system).
3. runs the preprocessed file through a C formatter, which attempts to group
statements on one line. For example, a struct definition that was
formerly on several lines will take just one line after formatting. This
is done so that unique declarations can be detected. Duplicates are thus
easy to remove.
4. remove lines that are too complex for the LuaJIT C parser (such as:
Objective-C block syntax, crazy enums defined on linux, ...)
5. remove duplicate declarations
6. pass result to ffi.cdef
|
|
|
|
|
|
|
| |
The function prototypes use garray_T* arguments, but the header is not
included in path.h. Technically we could also get away with a forward
declaration since we're just using the pointer, but I don't see the urgent
need for that.
|
|
|
|
|
|
|
|
| |
Problem: The string returned by submatch() does not distinguish between a
NL from a line break and a NL that stands for a NUL character.
Solution: Add a second argument to return a list. (ZyX)
https://code.google.com/p/vim/source/detail?r=a63d0cd691dc925283815d17d62f4e948d723a59
|
|
|
|
|
|
|
| |
Problem: Can't call a global function with "g:" in an expression.
Solution: Skip the "g:" when looking up the function.
https://code.google.com/p/vim/source/detail?r=8ec9d2196bee0c5108f2d2c196a660a7f4e5f29f
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
Problem: Can't define a function starting with "g:". Can't assign a
funcref to a buffer-local variable.
Solution: Skip "g:" at the start of a function name.
Don't check for colons when assigning to a variable.
https://code.google.com/p/vim/source/detail?r=00acac0af680c2d8c82db5258474b121a5908926
|
|
|
|
|
| |
At some places, printf-like function's arguments styling could be
improved to enhance readability.
|
|
|
|
|
|
|
|
|
| |
Though correct (to my understanding), some of the casts introduced in
previous commits could lead to confusion, by casting only the first
expression component instead of the whole expression.
This fixes that, parenthesizing casted expressions, except where
operator precedence rules make it unneccesary.
|
| |
|
|
|
|
|
|
|
|
| |
Fix uses of plain "%ld" within sscanf():
- Replace "%ld" with "%" SCNd64.
- Create (int64_t) local variable and sscanf into that.
- Safely downcast into previous type (introduce assertion, to be removed
when variable type refactored).
|
| |
|
|
|
|
| |
Clean up the use of list_append_string and remove error checks.
|
|
|
|
| |
Clean up the use of list_append_dict and remove error checks.
|
|
|
|
|
| |
Remove remnants of support for systems including
__EMX__, MSDOS, OS2, AMIGA and MORPHOS.
|
|
|
|
|
| |
Use `xcalloc` instead.
Inline `alloc_tv` and `alloc_string_tv` in eval.c
|
|
|
|
|
|
|
| |
In newer versions of `pip`, it is obsolete. See the following relevant links.
https://pip.readthedocs.org/en/latest/news.html
https://github.com/eddyxu/cpp-coveralls/pull/37
|
|
|
|
|
|
|
|
|
|
| |
Problem: It is possible to define a function with a colon in the name. It
is possible to define a function with a lower case character if a
"#" appears after the name.
Solution: Disallow using a colon other than with "s:". Ignore "#" after the
name.
https://code.google.com/p/vim/source/detail?r=6bc874e4789a0f912b4fd6b23afecf19d80b1605
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Problem: When updating the window involves a regexp pattern, an
interactive substitute to replace a "\n" with a line
break fails. (Ingo Karkat)
Solution: Set reg_line_lbr in vim_regsub() and vim_regsub_multi().
https://code.google.com/p/vim/source/detail?r=43c6cd07c8defd8505acbe479c6970764c08e6f9
|
|
|
|
|
|
| |
On a1a0c00589a8efc664db82be6743136bb462e08f, an assertion was disabled
because of breaking 32bit build.
This fixes that so that it now always works.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Today's compilers generate shift instructions to perform division and
multiplications by powers of 2 [1]. `(x >> 1)` looks straightforward enough, but
if x is signed the code will fail when x < 0. The compiler knows better: use
`x / 2`.
That's why we have code like this:
(long)((long_u)Rows >> 1))
instead of the cleaner version that generates the same or better machine code:
Rows / 2
[1] http://goo.gl/J4WpG7
|
| |
|
|
|
|
|
|
| |
- ml_add_stack()
- ml_encrypt_data()
- ml_updatechunk()
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
quickfix.c
- ll_new_list
- ll_get_or_alloc_list
regex_nfa.c
- realloc_post_list -> EMIT -> nfa_emit_equi_class
- nfa_regcomp_start
Use xrealloc() in realloc_post_list() (regexp_nfa.c)
Test plan: force a call to realloc_post_list() for every use of the EMIT macro;
open nvim and test regexp search.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- alloc_tabpage()
- win_alloc_lines()
- win_alloc_aucmd_win()
- new_frame()
- win_alloc()
TODO: don't handle OOM after calls to dict_alloc()
|
| |
|
|
|
|
|
| |
Even though cs_reset() never returns anything different of `CS_SUCCESS` I can't
change its return type to `void`. cs_reset() is used in the `cs_cmds` table.
|
| |
|
|
|
|
|
| |
- Replace alloc() with xmalloc[z]() and remove unnecessary casts in hardcopy.c
- Use xstrndup in hardcopy.c
|
|
|
|
|
|
| |
- xmallocz() is not static anymore. There are many use cases for this function
in the codebase and we should start using it.
- Simpler types in ga_concat_strings()
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
There will be more use cases for try_malloc(): see #556.
- Reimplemented xmalloc() using try_malloc().
- verbose_try_malloc() is just like try_malloc() but shows an out-of-memory
error message before returning NULL.
- Let the compiler generate size>>1 assembly for signed types. We're not using
old compilers here.
- Add proper function attributes to the new functions in memory.h
|
|
|
|
|
|
|
|
| |
Unfortunately there's still a case where NULL can be returned from
file_pat_to_reg_pat().
xmemdupz() and xmallocz() aren't static anymore. There are many use cases for
these function.
|
|
|
|
|
|
|
|
| |
Problem: When some patches was not included has("patch-7.4.123") may return
true falsely.
Solution: Check for the specific patch number.
https://code.google.com/p/vim/source/detail?r=71b165a378ad580818f6d497ecf0f8ad054a9683
|
| |
|
|
|
|
|
|
|
|
|
|
| |
With this, you can now run a single unit test file using:
TEST_FILE=/path/to/file make unittest
For example, to just run the path unit tests, you can do:
TEST_FILE=test/unit/path.moon make unittest
|
|
|
|
|
|
|
|
| |
This allows you to do
make VERBOSE=1
from the top-level and see the actual compile lines.
|
|
|
|
|
| |
- Modify Clint advice to reflect preference for fixed sized macros.
- Cleanup comment to eliminate referecen to "%ld".
|