Commit Graph

458 Commits

Author SHA1 Message Date
Nicolas Hillegeer
28b3659955 use function attributes on allocation functions
This should allow gcc/clang/icc to generate better code and clarifies
function intent.
2014-03-29 20:10:06 +01:00
Nicolas Hillegeer
d5708b200a add func_attr.h to be able to use func attribs
Currently enables these for every gnu-like compilers, i.e.: gcc, clang and
icc.
2014-03-29 20:09:57 +01:00
John Schmidt
44e40b02cf Move remove_duplicates to garray.c 2014-03-29 13:29:53 -03:00
John Schmidt
f5154d7451 Extract path.c from misc1.c 2014-03-29 13:29:52 -03:00
John Szakmeister
86180787fa Drop the deb-src for clang.
The llvm.org/apt repo currently has an issue with the source packages,
and we don't need it on Travis anyways.
2014-03-29 10:01:18 -04:00
John Szakmeister
0efc815216 Append to CMAKE_PREFIX_PATH instead setting it outright.
Also, don't set it in the FindXxx cmake scripts--it's unnecessary, and
it resets the value.
2014-03-28 05:09:45 -04:00
Thomas Wienecke
4e29a820b6 Address clint warnings and other style issues.
* Add const.
* Fix conditions (move && from end to start of line).
* Use int32_t instead of long.
* Use //-style comments.
2014-03-27 19:57:55 -03:00
Thomas Wienecke
5762c4e528 Rename mch_* functions to os_* in os module. 2014-03-27 19:57:55 -03:00
Thiago de Arruda
3f7011ab91 Fix prepare watcher teardown in the event loop 2014-03-27 19:22:44 -03:00
Thiago de Arruda
e995b21567 Re-integrate FEAT_FILTERPIPE code
This feature was accidentally removed when doing the initial import from vim. It
makes vim use pipes instead of temporary files for filtering buffers through
shell commands.

I found that this was missing when looking for references of
SHELL_READ/SHELL_WRITE outside mch_call_shell`.

When `mch_call_shell` is reimplemented on top of libuv process management
facilities, pipes will always be used for communication with child processes so
it makes sense to enable the feature permanently.
2014-03-27 17:36:32 -03:00
Thiago de Arruda
1e8eb4e2c6 Make EventType enum private to input.c
This enum doesn't need to be public since `event_poll` is only interested in
user input(but other events may be handled by libuv callbacks).
2014-03-27 17:25:31 -03:00
John Szakmeister
e644f8c2b1 Don't use alias in travis.sh.
We don't want to clobber anyone's make alias when running travis.sh
directly.
2014-03-27 14:43:13 -04:00
Julian Orth
d1ef25728a More cleanup 2014-03-27 14:03:36 -03:00
Julian Orth
380b8048db remove leftover c++ headers 2014-03-27 14:03:36 -03:00
Julian Orth
5a2168a601 remove some leftover function calls 2014-03-27 14:03:35 -03:00
Julian Orth
323e90ee79 remove cpp headers 2014-03-27 14:03:35 -03:00
Julian Orth
f3a77cfd8c remove cpp file extensions 2014-03-27 14:03:35 -03:00
Julian Orth
2b7cd6ebbc remove CleanseRawStrings 2014-03-27 14:03:35 -03:00
Julian Orth
a8e2cab3ef remove C++ only _NestingState parts 2014-03-27 14:03:35 -03:00
Julian Orth
2aadf0daac clean up CheckForNonStandardConstruct
remove C++ stuff and add C types
2014-03-27 14:03:35 -03:00
Julian Orth
23a41ebf8f remove C++ stuff from CheckSpacingForFunctionCall 2014-03-27 14:03:35 -03:00
Julian Orth
95659707a8 remove C++ stuff from CheckSpacing 2014-03-27 14:03:35 -03:00
Julian Orth
ef23bbe6ee remove CheckSectionSpacing
irrelevant
2014-03-27 14:03:35 -03:00
Julian Orth
cb5f1fa51d remove unused function 2014-03-27 14:03:35 -03:00
Julian Orth
67dbb1afda remove some unused variables 2014-03-27 14:03:35 -03:00
Julian Orth
ccc3375d99 remove C++ only stuff from CheckLanguage
Do we want VLAs?
2014-03-27 14:03:35 -03:00
Julian Orth
4bfb03c630 remove "stream check" from CheckIncludeLine
irrelevant
2014-03-27 14:03:35 -03:00
Julian Orth
b3edf6c065 remove CheckForNonConstReference
irrelevant
2014-03-27 14:03:35 -03:00
Julian Orth
1511901467 remove CheckCStyleCast 2014-03-27 14:03:35 -03:00
Julian Orth
38eaa7ed32 remove CheckForIncludeWhatYouUse
Only checks C++ related headers
2014-03-27 14:03:35 -03:00
Julian Orth
cfa070edc5 remove CheckMakePairUsesDeduction
Irrelevant
2014-03-27 14:03:35 -03:00
John
7326894a06 Cleanup of indent.c to make it comply with style guide.
- Uncrustify indent.c
- Fix comments
- Fix whitespace
- Format get_lisp_indent (needs to be refactored completely)
- Fix endline comments
- Change to postincrement
- Fix clint.py errors
- Move static function last
- Fix blank endlines
2014-03-27 11:55:56 -03:00
Thiago de Arruda
452804638d Reimplement input functions on top of libuv
The functions `mch_inchar`, `mch_breakcheck`, `mch_char_avail` were
reimplemented on top of libuv. Here's how it works:

- When Neovim needs to wait for characters, it will transfer control to libuv
  event loop.
- When the libuv event loop gets user input, it will transfer control back to
  Neovim
- Neovim uses the `input_read` function to get the actual data read by libuv.

With this scheme its possible to keep Neovim single-threaded while enjoying the
benefits provided by libuv.

This commit leaves SIGWINCH broken for now
2014-03-26 18:30:18 -03:00
Felipe Oliveira Carvalho
f8432ef127 Use realloc instead of vim_realloc 2014-03-26 18:29:17 -03:00
Felipe Oliveira Carvalho
580ababcb5 HAVE_AVAIL_MEM is always undefined. Remove tests and dead code
Defining HAVE_AVAIL_MEM doesn't even build. The code tries to call
`mch_avail_mem` which is not defined.
2014-03-26 18:29:17 -03:00
Felipe Oliveira Carvalho
83161200c4 Remove MEM_PROFILE related code
Code around `#ifdef MEM_PROFILE` was used to profile vim's memory
comsumption. It's very likely broken as new code is using malloc() and free()
directly.

In this day and age, valgrind can solve in a much reliable way what
this code was trying to do.
2014-03-26 18:29:17 -03:00
Felipe Oliveira Carvalho
bd78282940 Use memcmp instead of vim_memcmp 2014-03-26 16:28:13 -03:00
Felipe Oliveira Carvalho
07dad7acf3 Use memmove instead of mch_memmove 2014-03-26 16:28:13 -03:00
Petter Wahlman
dbc904956a Prefer enums over incremental defines 2014-03-26 16:26:56 -03:00
Felipe Oliveira Carvalho
ed3e9d51ac Use memset instead of vim_memset
Ran some commands on terminal, reviewed changes, and made some manual changes
too.

    find src | xargs perl -i -p -e "s/vim_memset/memset/g"
    git grep -l memset | egrep "\.c$" | xargs perl -i -p -e \
        's/(#include "vim\.h")/#include <string.h>\n\n\1/g'
2014-03-25 18:57:02 -03:00
Felipe Oliveira Carvalho
68bc6bce29 Do not include farsi.c in main.c
- Change CMakeLists.txt to compile farsi.c normally
 - Add const to global variables in farsi.h and define them in farsi.c (no need
   to include farsi.h with DO_INIT defined in globals.h)
 - Include farsi.h where necessary
 - Include all necessary headers in farsi.c
 - Move farsi function declarations from main.h to farsi.h
2014-03-25 18:48:45 -03:00
Felipe Oliveira Carvalho
b7f953b9e4 Move some #defines from farsi.h to farsi.c 2014-03-25 18:48:45 -03:00
John Szakmeister
f9aeb219c1 Fail RunUnittests if we get a non-zero exit code from busted. 2014-03-25 13:10:26 -04:00
Stefan Hoffmann
7d413050ba fix mch_delay() unittest 2014-03-25 15:41:15 +01:00
Thiago de Arruda
32f118a47f Implement mch_delay on top of libuv
Needed to temporarily move two static variables from os_unix.c to 'globals.h'
as those are shared by other functions still in os_unix.
2014-03-24 19:25:07 -03:00
Felipe Oliveira Carvalho
ed42c808b6 inline arabic_char() 2014-03-24 18:23:24 -03:00
Felipe Oliveira Carvalho
5c66dfea3c Reformat new function in arabic.c to comply with style guide 2014-03-24 18:23:24 -03:00
Felipe Oliveira Carvalho
8b2a5e678e Move arabic.h #defines from arabic.h to arabic.c
- Move arabic_shape() decl from main.h to arabic.h
 - Move arabic_combine() and arabic_maycombine() from mbyte.c to
   arabic.c as these functions use the #defines I moved.
 - Remove the unnecessary include of arabic.h in globals.h
 - Remove include of arabic.c (sic) in main.c (change CMakeLists.txt to compile
   arabic.c normally)
2014-03-24 18:23:24 -03:00
Felipe Oliveira Carvalho
fd6fd35eef Turn ARABIC_CHAR into a function 2014-03-24 18:23:23 -03:00
John Szakmeister
7bd4d68d93 Don't require busted.
Only provide the unittest target if busted was found.  And only build
nvim-test if the unittest target exists by excluding nvim-test from all.
Note: this means nvim-test won't be built by default, but it will be
built when you try to run unittests.
2014-03-23 05:42:18 -04:00