aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/eval.c
Commit message (Collapse)AuthorAge
...
* Use strict function prototypes #945Pavel Platto2014-07-14
| | | | | | | | | | | | | | | | | | | `-Wstrict-prototypes` warn if a function is declared or defined without specifying the argument types. This warning disallow function prototypes with empty parameter list. In C, a function declared with an empty parameter list accepts an arbitrary number of arguments when being called. This is for historic reasons; originally, C functions didn't have prototypes, as C evolved from B, a typeless language. When prototypes were added, the original typeless declarations were left in the language for backwards compatibility. Instead we should provide `void` in argument list to state that function doesn't have arguments. Also this warning disallow declaring type of the parameters after the parentheses because Neovim header generator produce no declarations for old-stlyle prototypes: it expects to find `{` after prototype.
* os_open: impl mch_open with libuv. ref #133Justin M. Keyes2014-07-14
| | | | | | | | | - use return value instead of open_req.result - libuv uv_fs_open() returns `-errno` instead of always -1 - libuv always sets open_req.result to the return value, _except_ for OOM where it only sets the return value. So always use the return value. - replace calls to mch_open macro. - update call sites expecting -1 error
* move defines from vim.hBrandon Coleman2014-07-12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | buffer.h: buflist_getfile() flags buflist_new() flags buf_freeall() flags do_buffer() flags charset.h: chartab[] flags edit.h: in_cinkeys() flags change_indent() flags beginline() flags insertchar() flags nv_mousescroll() flags eval.c AUTOLOAD_CHAR eval.h: enum for vimvars[] ex_cmds.h: do_ecmd read_viminfo flags ex_cmds2.h: check_changed() flags do_source() flags ex_cmds_defs.h: BAD_* flags ex_docmd.h: VALID_PATH VALID_HEAD EXMODE_* do_cmdline() flags added include ex_getln.c *_ESC_CHARS definitions ex_getln.h: history table flags - used by add_to_history() fileio.h: readfile() flags event_T definition getchar.h: ins_typebuf() flags KEYLEN_* globals.h: NO_SCREEN NO_BUFFERS SEA_* defines current_SID flags hlf_T enum HL_FLAGS do_profiling() flags schar_T sattr_T indent.h: set_indent() flags macros.h: BINARY_FILE_IO flags mbyte.h: MB_BYTE2LEN* ENC_* memfile.h: mf_sync() flags misc1.h: open_line() flags message.h: do_dialog() flags vim_dialogyesno() flags DLG_BUTTON_* normal.h: find_ident_under_cursor() flags ops.h: do_put() flags operator ID's option.h: buf_copy_options() flags OPT_* flags os_unix.h: mch_nodetype() flags quickfix.h: skip_vimgrep_pat() flags regexp.h: vim_regcomp() flags values for reg_do_extmatch search.h: do_search() flags search_regcomp() flags findmatchlimit() flags syntax.h: HL_* flags HL_FOLD is used in buffer_defs.h but nvim compiles just fine with the defines in syntax.h tag.h: do_tag() flags find_tags() flags term.h: TBUFSZ flags MOUSE flags ui.h: jump_to_mouse() flags window.h: file_name_in_line() flags win_split() flags MIN_LINES MIN_COLUMNS Remove VimClipboard which should have been removed with PR #921.
* vim-patch:7.4.306 #842Will Stamper2014-07-11
| | | | | | | | Problem: getchar(0) does not return Esc. Solution: Do not wait for an Esc sequence to be complete. (Yasuhiro Matsumoto) https://code.google.com/p/vim/source/detail?r=05e1d8afcc5e375bf708ccc9810e2fd1a5a8a3cf
* c99: remove vim_round #909Nicolas Hillegeer2014-07-11
| | | | | C89 did not have round(), vim emulated it with vim_round. But since we're using C99 this is not a problem anymore.
* move errno.h include out of vim.hBrandon Coleman2014-07-09
|
* move stdarg.h include out of vim.hBrandon Coleman2014-07-09
|
* move <inttypes.h> include out of vim.hBrandon Coleman2014-07-09
|
* move locale.h include out of vim.hBrandon Coleman2014-07-09
|
* move ascii.h include out of vim.hBrandon Coleman2014-07-09
|
* remove stdbool.h include from vim.h and globals.hBrandon Coleman2014-07-09
|
* Replaced most TRUE/FALSE macros in arabic, mbyte and spell. #645Klemen Košir2014-07-08
|
* Replace int with bool in some files. #654Klemen Košir2014-07-08
|
* Introduce ga_append_via_ptr() and GA_APPEND_VIA_PTR()Felipe Oliveira Carvalho2014-06-30
| | | | | | | | | | Similar to GA_APPEND(). Replaces this pattern: ga_grow(&ga, 1); item_type *p = ((item_type *)ga.ga_data) + ga.ga_len; p->field1 = v1; p->field2 = v2; ga.ga_len++;
* Introduce GA_APPEND()Felipe Oliveira Carvalho2014-06-30
| | | | | | | | | This macro is used to append an element to a growable array. It replaces this common idiom: ga_grow(&ga, 1); ((item_type *)ga.ga_data)[ga.ga_len] = item; ++ga.ga_len;
* libcall: remove libcall ifdefsNicolas Hillegeer2014-06-28
| | | | | Remove all the legacy code that related to mch_libcall in some way. os_libcall is implemented on top of libuv now.
* os: implement VimL libcall with {mch,os}_libcallNicolas Hillegeer2014-06-28
| | | | | | | | The old mch_libcall was removed from neovim. This is a partial reimplementation on top of libuv. It doesn't catch exceptions (windows) nor signals (unix) though, so it's quite a bit more prone to crashing if the loadable library throws an exception or crashes. Still, it should be fine for well-behaved libraries. Requested by @Shougo.
* channel/msgpack_rpc: Refactor to better split functions across modulesThiago de Arruda2014-06-24
| | | | | Move validation/conversion functions and to msgpack_rpc_helpers to separate those from the functions that are used from the channel module
* channel: Implement the 'channel_send_call' functionThiago de Arruda2014-06-24
| | | | | | | | This function is used to send RPC calls to clients. In contrast to `channel_send_event`, this function will block until the client sends a response(But it will continue processing requests from that client). The RPC call stack has a maximum depth of 20.
* job: Add a `maxmem` parameter to job_startThiago de Arruda2014-06-24
| | | | The value is forwarded to it's own WStream instance
* job: Fix vimscript wrapper by returning when an invalid id is passedThiago de Arruda2014-06-24
|
* vim-patch:7.4.298 #815oni-link2014-06-20
| | | | | | | Problem: Can't have a funcref start with "t:". Solution: Add "t" to the list of accepted names. (Yukihiro Nakadaira) https://code.google.com/p/vim/source/detail?r=156f891d520e93eab5d3ce02784660fb13a3b0d3
* coverity/68215: removed failed variable + dead code from f_readfile #860Will Stamper2014-06-18
|
* spatch to drop check after alloc/lalloc/xmalloc #690Nikolay Orlyuk2014-06-18
|
* api: Change type of event data to `Object` from `typval_T`Thiago de Arruda2014-06-18
|
* job: Refactor job_write to receive WBuffer instances.Thiago de Arruda2014-06-18
| | | | This was done to give more control over memory management to job_write callers.
* job: Add defer flag and setter methodThiago de Arruda2014-06-18
| | | | | This is has the same effect as the RStream 'defer' flag, but also works for the job's exit event.
* job: Refactor to use pointers instead of idsThiago de Arruda2014-06-18
| | | | | 'job_start' returns the id as an out paramter, and the 'job_find' function is now used by eval.c to translate job ids into pointers.
* Remove unnecessary comments and unnecessary returnFelipe Oliveira Carvalho2014-06-16
|
* No OOM for list_alloc()Felipe Oliveira Carvalho2014-06-16
|
* Fix some "out of memory" comments and few cosmeticsFelipe Oliveira Carvalho2014-06-16
|
* No OOM in concat_str() (few remaining cases)Felipe Oliveira Carvalho2014-06-16
| | | | Also fixed the duplicated declaration (path.c and strings.c)
* No OOM in vim_strsave_escape_csi()Felipe Oliveira Carvalho2014-06-16
|
* No OOM in home_replace_save()Felipe Oliveira Carvalho2014-06-16
|
* No OOM in vim_strsave_escaped[_ext]()Felipe Oliveira Carvalho2014-06-16
|
* No OOM in autoload_name()Felipe Oliveira Carvalho2014-06-16
|
* No OOM in list_insert_tv() and list_extend()Felipe Oliveira Carvalho2014-06-16
|
* No OOM in listitem_alloc()Felipe Oliveira Carvalho2014-06-16
|
* No OOM in dictitem_copyFelipe Oliveira Carvalho2014-06-16
|
* No OOM in hash_may_resize() and hash_add_item()Felipe Oliveira Carvalho2014-06-16
| | | | hash_add() can still return FAIL if the key already exists.
* No OOM in dictitem_alloc()Felipe Oliveira Carvalho2014-06-16
|
* No OOM in dict_alloc() and rettv_dict_alloc()Felipe Oliveira Carvalho2014-06-16
|
* Replace vim_strncpy calls: eval.cDouglas Schneider2014-06-13
|
* move/remove W_* macrosBrandon Coleman2014-06-12
| | | | | move W_ENDCOL to screen.c remove the rest of the W_* macros
* Declare garray iterators in the for() scope where possible #819Felipe Oliveira Carvalho2014-06-10
|
* text: remove useless arg from mb_string2cellsNicolas Hillegeer2014-06-08
| | | | | | | | | | | | | | | | | | mb_string2cells was always called like mb_string2cells(..., -1) so that was the only codepath that was tested. @tarruda was the first to try to input an actual length, after which valgrind detected that funny business was going on. It's not even possible to do the right thing with the current text codec infrastructure: they all assume to be working with C strings. Meaning that if there is no NUL-terminator, they will happily keep on reading past the end of Pascal strings. Ergo, passing the length parameter is moot. The condition in the for-loop was wrong as well (but that's no longer relevant). Also change the return value to size_t, by analogy with strlen. ref: https://github.com/neovim/neovim/commit/677d30d7966dd2766bbf20665791c568dacc427a
* Remove USE_CR and tag_fgets. #808Justin M. Keyes2014-06-06
| | | | These features are only used by legacy Mac OS.
* vim-patch:7.4.286 #750oni-link2014-06-05
| | | | | | | Problem: Error messages are inconsistant. (ZyX) Solution: Change "Lists" to "list". https://code.google.com/p/vim/source/detail?r=be19015ef43cc17825929206790696c2e716035d
* Fix some stylesZyX2014-06-02
|
* Add automatic generation of headersZyX2014-06-02
| | | | | | | | | | | | | | | | | - The 'stripdecls.py' script replaces declarations in all headers by includes to generated headers. `ag '#\s*if(?!ndef NEOVIM_).*((?!#\s*endif).*\n)*#ifdef INCLUDE_GENERATED'` was used for this. - Add and integrate gendeclarations.lua into the build system to generate the required includes. - Add -Wno-unused-function - Made a bunch of old-style definitions ANSI This adds a requirement: all type and structure definitions must be present before INCLUDE_GENERATED_DECLARATIONS-protected include. Warning: mch_expandpath (path.h.generated.h) was moved manually. So far it is the only exception.