diff options
author | Jakub Łuczyński <doubleloop@o2.pl> | 2020-02-11 15:55:21 +0100 |
---|---|---|
committer | Jakub Łuczyński <doubleloop@o2.pl> | 2020-02-13 14:11:50 +0100 |
commit | c7ef0e8d2d6fd033f89441839dde4d1d2588a940 (patch) | |
tree | bf9600e97c18da0460803a223b064f14370e304a /src | |
parent | 3c413f15238d3c48c0606d661841477cb2c9ed5c (diff) | |
download | rneovim-c7ef0e8d2d6fd033f89441839dde4d1d2588a940.tar.gz rneovim-c7ef0e8d2d6fd033f89441839dde4d1d2588a940.tar.bz2 rneovim-c7ef0e8d2d6fd033f89441839dde4d1d2588a940.zip |
fix: moved some static inline function
Diffstat (limited to 'src')
-rw-r--r-- | src/nvim/eval.c | 18 | ||||
-rw-r--r-- | src/nvim/eval/user_funcs.c | 16 |
2 files changed, 16 insertions, 18 deletions
diff --git a/src/nvim/eval.c b/src/nvim/eval.c index 6f9dcd48df..e3b82a8b89 100644 --- a/src/nvim/eval.c +++ b/src/nvim/eval.c @@ -9583,24 +9583,6 @@ char *autoload_name(const char *const name, const size_t name_len) return scriptname; } - - -/// Check whether funccall is still referenced outside -/// -/// It is supposed to be referenced if either it is referenced itself or if l:, -/// a: or a:000 are referenced as all these are statically allocated within -/// funccall structure. -static inline bool fc_referenced(const funccall_T *const fc) - FUNC_ATTR_ALWAYS_INLINE FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT - FUNC_ATTR_NONNULL_ALL -{ - return ((fc->l_varlist.lv_refcount // NOLINT(runtime/deprecated) - != DO_NOT_FREE_CNT) - || fc->l_vars.dv_refcount != DO_NOT_FREE_CNT - || fc->l_avars.dv_refcount != DO_NOT_FREE_CNT - || fc->fc_refcount > 0); -} - /* * Called when starting to read a function line. * "sourcing_lnum" must be correct! diff --git a/src/nvim/eval/user_funcs.c b/src/nvim/eval/user_funcs.c index b3706c7754..7b13b0c539 100644 --- a/src/nvim/eval/user_funcs.c +++ b/src/nvim/eval/user_funcs.c @@ -2607,6 +2607,22 @@ void func_ptr_ref(ufunc_T *fp) } } +/// Check whether funccall is still referenced outside +/// +/// It is supposed to be referenced if either it is referenced itself or if l:, +/// a: or a:000 are referenced as all these are statically allocated within +/// funccall structure. +static inline bool fc_referenced(const funccall_T *const fc) + FUNC_ATTR_ALWAYS_INLINE FUNC_ATTR_PURE FUNC_ATTR_WARN_UNUSED_RESULT + FUNC_ATTR_NONNULL_ALL +{ + return ((fc->l_varlist.lv_refcount // NOLINT(runtime/deprecated) + != DO_NOT_FREE_CNT) + || fc->l_vars.dv_refcount != DO_NOT_FREE_CNT + || fc->l_avars.dv_refcount != DO_NOT_FREE_CNT + || fc->fc_refcount > 0); +} + /// @return true if items in "fc" do not have "copyID". That means they are not /// referenced from anywhere that is in use. static int can_free_funccal(funccall_T *fc, int copyID) |