Patch 8.1.0785
Problem:    Depending on the configuration some functions are unused.
Solution:   Add more #ifdefs, remove unused functions. (Dominique Pelle,
            closes #3822)
Files:      src/buffer.c, src/channel.c, src/ex_cmds2.c, src/ex_docmd.c,
            src/fileio.c, src/getchar.c, src/gui_gtk_x11.c, src/hashtab.c,
            src/json.c, src/mbyte.c, src/message.c, src/misc1.c, src/misc2.c,
            src/ops.c, src/option.c, src/os_unix.c, src/proto/os_unix.pro,
            src/proto/regexp.pro, src/proto/terminal.pro, src/regexp.c,
            src/screen.c, src/search.c, src/syntax.c, src/term.c,
            src/terminal.c, src/ui.c, src/userfunc.c


*** ../vim-8.1.0784/src/buffer.c        2019-01-19 17:43:03.401449251 +0100
--- src/buffer.c        2019-01-20 15:27:17.306620811 +0100
***************
*** 5660,5665 ****
--- 5660,5666 ----
      return buf != NULL && buf->b_p_bt[0] == NUL;
  }
  
+ #if defined(FEAT_QUICKFIX) || defined(PROTO)
  /*
   * Return TRUE if "buf" is the quickfix buffer.
   */
***************
*** 5668,5674 ****
--- 5669,5677 ----
  {
      return buf != NULL && buf->b_p_bt[0] == 'q';
  }
+ #endif
  
+ #if defined(FEAT_TERMINAL) || defined(PROTO)
  /*
   * Return TRUE if "buf" is a terminal buffer.
   */
***************
*** 5677,5682 ****
--- 5680,5686 ----
  {
      return buf != NULL && buf->b_p_bt[0] == 't';
  }
+ #endif
  
  /*
   * Return TRUE if "buf" is a help buffer.
***************
*** 5721,5726 ****
--- 5725,5731 ----
                 || buf->b_p_bt[0] == 'p');
  }
  
+ #if defined(FEAT_QUICKFIX) || defined(PROTO)
      int
  bt_dontwrite_msg(buf_T *buf)
  {
***************
*** 5731,5736 ****
--- 5736,5742 ----
      }
      return FALSE;
  }
+ #endif
  
  /*
   * Return TRUE if the buffer should be hidden, according to 'hidden', ":hide"
*** ../vim-8.1.0784/src/channel.c       2019-01-19 14:36:56.796683378 +0100
--- src/channel.c       2019-01-20 15:27:17.306620811 +0100
***************
*** 2750,2755 ****
--- 2750,2756 ----
      return TRUE;
  }
  
+ #if defined(FEAT_NETBEANS_INTG) || defined(PROTO)
  /*
   * Return TRUE when channel "channel" is open for writing to.
   * Also returns FALSE or invalid "channel".
***************
*** 2760,2765 ****
--- 2761,2767 ----
      return channel != NULL && (channel->CH_SOCK_FD != INVALID_FD
                          || channel->CH_IN_FD != INVALID_FD);
  }
+ #endif
  
  /*
   * Return TRUE when channel "channel" is open for reading or writing.
*** ../vim-8.1.0784/src/ex_cmds2.c      2019-01-19 17:43:03.405449224 +0100
--- src/ex_cmds2.c      2019-01-20 15:27:17.306620811 +0100
***************
*** 1578,1584 ****
  #  endif
  # endif
  
! #if defined(FEAT_SYN_HL) && defined(FEAT_RELTIME) && defined(FEAT_FLOAT)
  # if defined(HAVE_MATH_H)
  #  include <math.h>
  # endif
--- 1578,1584 ----
  #  endif
  # endif
  
! #if defined(FEAT_SYN_HL) && defined(FEAT_RELTIME) && defined(FEAT_FLOAT) && 
defined(FEAT_PROFILE)
  # if defined(HAVE_MATH_H)
  #  include <math.h>
  # endif
*** ../vim-8.1.0784/src/ex_docmd.c      2019-01-19 17:43:03.409449198 +0100
--- src/ex_docmd.c      2019-01-20 15:27:17.310620785 +0100
***************
*** 12314,12319 ****
--- 12314,12320 ----
  }
  #endif
  
+ #if defined(FEAT_CMDL_COMPL) || defined(PROTO)
      char_u *
  get_mapclear_arg(expand_T *xp UNUSED, int idx)
  {
***************
*** 12321,12326 ****
--- 12322,12328 ----
        return (char_u *)"<buffer>";
      return NULL;
  }
+ #endif
  
  static int filetype_detect = FALSE;
  static int filetype_plugin = FALSE;
*** ../vim-8.1.0784/src/fileio.c        2019-01-19 17:43:03.409449198 +0100
--- src/fileio.c        2019-01-20 15:27:17.310620785 +0100
***************
*** 9303,9308 ****
--- 9303,9309 ----
      return (first_autopat[(int)EVENT_CURSORMOVED] != NULL);
  }
  
+ #if defined(FEAT_CONCEAL) || defined(PROTO)
  /*
   * Return TRUE when there is a CursorMovedI autocommand defined.
   */
***************
*** 9311,9316 ****
--- 9312,9318 ----
  {
      return (first_autopat[(int)EVENT_CURSORMOVEDI] != NULL);
  }
+ #endif
  
  /*
   * Return TRUE when there is a TextChanged autocommand defined.
***************
*** 9330,9335 ****
--- 9332,9338 ----
      return (first_autopat[(int)EVENT_TEXTCHANGEDI] != NULL);
  }
  
+ #if defined(FEAT_INS_EXPAND) || defined(PROTO)
  /*
   * Return TRUE when there is a TextChangedP autocommand defined.
   */
***************
*** 9338,9343 ****
--- 9341,9347 ----
  {
      return (first_autopat[(int)EVENT_TEXTCHANGEDP] != NULL);
  }
+ #endif
  
  /*
   * Return TRUE when there is an InsertCharPre autocommand defined.
***************
*** 9366,9371 ****
--- 9370,9376 ----
      return (first_autopat[(int)EVENT_FUNCUNDEFINED] != NULL);
  }
  
+ #if defined(FEAT_EVAL) || defined(PROTO)
  /*
   * Return TRUE when there is a TextYankPost autocommand defined.
   */
***************
*** 9374,9379 ****
--- 9379,9385 ----
  {
      return (first_autopat[(int)EVENT_TEXTYANKPOST] != NULL);
  }
+ #endif
  
  /*
   * Execute autocommands for "event" and file name "fname".
***************
*** 9823,9833 ****
--- 9829,9842 ----
  # endif
  }
  
+ #if defined(FEAT_EVAL) && (defined(FEAT_XIM) || defined(IME_WITHOUT_XIM)) \
+       || defined(PROTO)
      int
  is_autocmd_blocked(void)
  {
      return autocmd_blocked != 0;
  }
+ #endif
  
  /*
   * Find next autocommand pattern that matches.
***************
*** 10088,10093 ****
--- 10097,10103 ----
  
  #endif        /* FEAT_CMDL_COMPL */
  
+ #if defined(FEAT_EVAL) || defined(PROTO)
  /*
   * Return TRUE if autocmd is supported.
   */
***************
*** 10196,10201 ****
--- 10206,10212 ----
      vim_free(arg_save);
      return retval;
  }
+ #endif
  
  
  /*
*** ../vim-8.1.0784/src/getchar.c       2019-01-19 17:43:03.413449172 +0100
--- src/getchar.c       2019-01-20 15:27:17.310620785 +0100
***************
*** 413,418 ****
--- 413,419 ----
         && readbuf2.bh_first.b_next == NULL);
  }
  
+ #if defined(FEAT_EVAL) || defined(PROTO)
  /*
   * Return TRUE if readbuf1 is empty.  There may still be redo characters in
   * redbuf2.
***************
*** 422,427 ****
--- 423,429 ----
  {
      return (readbuf1.bh_first.b_next == NULL);
  }
+ #endif
  
  /*
   * Set a typeahead character that won't be flushed.
*** ../vim-8.1.0784/src/gui_gtk_x11.c   2019-01-13 23:38:33.391773303 +0100
--- src/gui_gtk_x11.c   2019-01-20 15:27:17.314620757 +0100
***************
*** 6737,6747 ****
--- 6737,6749 ----
  {
  }
  
+ #if (defined(FEAT_XCLIPBOARD) && defined(USE_SYSTEM)) || defined(PROTO)
      int
  clip_gtk_owner_exists(VimClipboard *cbd)
  {
      return gdk_selection_owner_get(cbd->gtk_sel_atom) != NULL;
  }
+ #endif
  
  
  #if defined(FEAT_MENU) || defined(PROTO)
*** ../vim-8.1.0784/src/hashtab.c       2019-01-13 23:38:33.395773275 +0100
--- src/hashtab.c       2019-01-20 15:27:17.314620757 +0100
***************
*** 81,86 ****
--- 81,87 ----
        vim_free(ht->ht_array);
  }
  
+ #if defined(FEAT_SPELL) || defined(PROTO)
  /*
   * Free the array of a hash table and all the keys it contains.  The keys must
   * have been allocated.  "off" is the offset from the start of the allocate
***************
*** 103,108 ****
--- 104,110 ----
      }
      hash_clear(ht);
  }
+ #endif
  
  /*
   * Find "key" in hashtable "ht".  "key" must not be NULL.
***************
*** 178,183 ****
--- 180,186 ----
      }
  }
  
+ #if defined(FEAT_EVAL) || defined(FEAT_SYN_HL) || defined(PROTO)
  /*
   * Print the efficiency of hashtable lookups.
   * Useful when trying different hash algorithms.
***************
*** 194,199 ****
--- 197,203 ----
                                hash_count_perturb * 100 / hash_count_lookup);
  #endif
  }
+ #endif
  
  /*
   * Add item with key "key" to hashtable "ht".
*** ../vim-8.1.0784/src/json.c  2019-01-17 17:13:25.920984090 +0100
--- src/json.c  2019-01-20 15:27:17.314620757 +0100
***************
*** 54,59 ****
--- 54,60 ----
      return ga.ga_data;
  }
  
+ #if defined(FEAT_JOB_CHANNEL) || defined(PROTO)
  /*
   * Encode ["nr", "val"] into a JSON format string in allocated memory.
   * "options" can contain JSON_JS, JSON_NO_NONE and JSON_NL.
***************
*** 83,88 ****
--- 84,90 ----
      list_unref(listtv.vval.v_list);
      return ga.ga_data;
  }
+ #endif
  
      static void
  write_string(garray_T *gap, char_u *str)
***************
*** 1082,1087 ****
--- 1084,1090 ----
      return OK;
  }
  
+ #if defined(FEAT_JOB_CHANNEL) || defined(PROTO)
  /*
   * Decode the JSON from "reader" and store the result in "res".
   * "options" can be JSON_JS or zero;
***************
*** 1102,1107 ****
--- 1105,1111 ----
  
      return ret;
  }
+ #endif
  
  /*
   * Decode the JSON from "reader" to find the end of the message.
*** ../vim-8.1.0784/src/mbyte.c 2019-01-19 17:43:03.417449145 +0100
--- src/mbyte.c 2019-01-20 15:27:17.314620757 +0100
***************
*** 844,849 ****
--- 844,850 ----
      return n;
  }
  
+ #if defined(FEAT_QUICKFIX) || defined(PROTO)
  /*
   * Remove all BOM from "s" by moving remaining text.
   */
***************
*** 863,868 ****
--- 864,870 ----
        }
      }
  }
+ #endif
  
  /*
   * Get class of pointer:
*** ../vim-8.1.0784/src/message.c       2019-01-19 21:06:55.344138786 +0100
--- src/message.c       2019-01-20 15:27:17.314620757 +0100
***************
*** 3507,3518 ****
--- 3507,3520 ----
      --no_wait_return;
  }
  
+ #if defined(FEAT_EVAL) || defined(PROTO)
      void
  give_warning2(char_u *message, char_u *a1, int hl)
  {
      vim_snprintf((char *)IObuff, IOSIZE, (char *)message, a1);
      give_warning(IObuff, hl);
  }
+ #endif
  
  /*
   * Advance msg cursor to column "col".
*** ../vim-8.1.0784/src/misc1.c 2019-01-19 17:43:03.421449119 +0100
--- src/misc1.c 2019-01-20 15:27:17.314620757 +0100
***************
*** 4672,4677 ****
--- 4672,4678 ----
      return pend;
  }
  
+ #if defined(FEAT_EVAL) || defined(PROTO)
      void
  vim_unsetenv(char_u *var)
  {
***************
*** 4681,4686 ****
--- 4682,4688 ----
      vim_setenv(var, (char_u *)"");
  #endif
  }
+ #endif
  
  
  /*
*** ../vim-8.1.0784/src/misc2.c 2019-01-19 17:43:03.421449119 +0100
--- src/misc2.c 2019-01-20 15:27:17.318620734 +0100
***************
*** 1033,1038 ****
--- 1033,1039 ----
  /*
   * lalloc() with an ID for alloc_fail().
   */
+ #if defined(FEAT_SIGNS) || defined(PROTO)
      char_u *
  lalloc_id(long_u size, int message, alloc_id_T id UNUSED)
  {
***************
*** 1042,1047 ****
--- 1043,1049 ----
  #endif
      return (lalloc((long_u)size, message));
  }
+ #endif
  
  #if defined(MEM_PROFILE) || defined(PROTO)
  /*
***************
*** 2135,2140 ****
--- 2137,2143 ----
      return OK;
  }
  
+ #if defined(FEAT_EVAL) || defined(FEAT_SEARCHPATH) || defined(PROTO)
  /*
   * For a growing array that contains a list of strings: concatenate all the
   * strings with a separating "sep".
***************
*** 2170,2175 ****
--- 2173,2179 ----
      }
      return s;
  }
+ #endif
  
  #if defined(FEAT_VIMINFO) || defined(FEAT_EVAL) || defined(PROTO)
  /*
*** ../vim-8.1.0784/src/ops.c   2019-01-19 17:43:03.421449119 +0100
--- src/ops.c   2019-01-20 15:27:17.318620734 +0100
***************
*** 201,206 ****
--- 201,207 ----
      return opchars[op][2] & OPF_LINES;
  }
  
+ #if defined(FEAT_JOB_CHANNEL) || defined(PROTO)
  /*
   * Return TRUE if operator "op" changes text.
   */
***************
*** 209,214 ****
--- 210,216 ----
  {
      return opchars[op][2] & OPF_CHANGE;
  }
+ #endif
  
  /*
   * Get first operator command character.
***************
*** 1050,1055 ****
--- 1052,1059 ----
  #endif
  }
  
+ #if (defined(FEAT_CLIPBOARD) && defined(FEAT_X11) && defined(USE_SYSTEM)) \
+       || defined(PROTO)
      void
  free_register(void *reg)
  {
***************
*** 1061,1066 ****
--- 1065,1071 ----
      vim_free(reg);
      *y_current = tmp;
  }
+ #endif
  
  #if defined(FEAT_MOUSE) || defined(PROTO)
  /*
*** ../vim-8.1.0784/src/option.c        2019-01-19 17:43:03.421449119 +0100
--- src/option.c        2019-01-20 15:27:17.318620734 +0100
***************
*** 10699,10704 ****
--- 10699,10705 ----
  #endif
  }
  
+ #if defined(FEAT_PYTHON) || defined(FEAT_PYTHON3) || defined(PROTO)
  /*
   * Unset local option value, similar to ":set opt<".
   */
***************
*** 10800,10805 ****
--- 10801,10807 ----
  #endif
      }
  }
+ #endif
  
  /*
   * Get pointer to option variable, depending on local or global scope.
***************
*** 13122,13127 ****
--- 13124,13130 ----
      return TRUE;
  }
  
+ #if defined(FEAT_BEVAL) || defined(PROTO)
  /*
   * Copy a tabstop array, allocating space for the new array.
   */
***************
*** 13140,13145 ****
--- 13143,13149 ----
  
      return newts;
  }
+ #endif
  
  /*
   * Return a count of the number of tabstops.
*** ../vim-8.1.0784/src/os_unix.c       2019-01-19 17:43:03.425449092 +0100
--- src/os_unix.c       2019-01-20 15:27:17.318620734 +0100
***************
*** 1016,1022 ****
   * Returns OK for normal return, FAIL when the protected code caused a
   * problem and LONGJMP() was used.
   */
!     void
  mch_startjmp(void)
  {
  #ifdef SIGHASARG
--- 1016,1022 ----
   * Returns OK for normal return, FAIL when the protected code caused a
   * problem and LONGJMP() was used.
   */
!     static void
  mch_startjmp(void)
  {
  #ifdef SIGHASARG
***************
*** 1025,1037 ****
      lc_active = TRUE;
  }
  
!     void
  mch_endjmp(void)
  {
      lc_active = FALSE;
  }
  
!     void
  mch_didjmp(void)
  {
  # if defined(HAVE_SIGALTSTACK) || defined(HAVE_SIGSTACK)
--- 1025,1037 ----
      lc_active = TRUE;
  }
  
!     static void
  mch_endjmp(void)
  {
      lc_active = FALSE;
  }
  
!     static void
  mch_didjmp(void)
  {
  # if defined(HAVE_SIGALTSTACK) || defined(HAVE_SIGSTACK)
*** ../vim-8.1.0784/src/proto/os_unix.pro       2018-06-12 20:25:47.891923371 
+0200
--- src/proto/os_unix.pro       2019-01-20 15:27:17.318620734 +0100
***************
*** 7,15 ****
  long_u mch_total_mem(int special);
  void mch_delay(long msec, int ignoreinput);
  int mch_stackcheck(char *p);
- void mch_startjmp(void);
- void mch_endjmp(void);
- void mch_didjmp(void);
  void mch_suspend(void);
  void mch_init(void);
  void reset_signals(void);
--- 7,12 ----
*** ../vim-8.1.0784/src/proto/regexp.pro        2018-12-29 22:28:42.750699129 
+0100
--- src/proto/regexp.pro        2019-01-20 15:27:17.318620734 +0100
***************
*** 1,6 ****
  /* regexp.c */
  int re_multiline(regprog_T *prog);
- int re_lookbehind(regprog_T *prog);
  char_u *skip_regexp(char_u *startp, int dirc, int magic, char_u **newp);
  int vim_regcomp_had_eol(void);
  void free_regexp_stuff(void);
--- 1,5 ----
*** ../vim-8.1.0784/src/proto/terminal.pro      2018-06-19 19:59:15.244704285 
+0200
--- src/proto/terminal.pro      2019-01-20 15:27:17.318620734 +0100
***************
*** 18,24 ****
  int term_use_loop(void);
  void term_win_entered(void);
  int terminal_loop(int blocking);
- void term_job_ended(job_T *job);
  void term_channel_closed(channel_T *ch);
  void term_check_channel_closed_recently(void);
  int term_do_update_window(win_T *wp);
--- 18,23 ----
*** ../vim-8.1.0784/src/regexp.c        2019-01-19 17:43:03.425449092 +0100
--- src/regexp.c        2019-01-20 15:27:17.318620734 +0100
***************
*** 734,749 ****
  }
  
  /*
-  * Return TRUE if compiled regular expression "prog" looks before the start
-  * position (pattern contains "\@<=" or "\@<!").
-  */
-     int
- re_lookbehind(regprog_T *prog)
- {
-     return (prog->regflags & RF_LOOKBH);
- }
- 
- /*
   * Check for an equivalence class name "[=a=]".  "pp" points to the '['.
   * Returns a character representing the class. Zero means that no item was
   * recognized.  Otherwise "pp" is advanced to after the item.
--- 734,739 ----
***************
*** 8206,8211 ****
--- 8196,8203 ----
  }
  #endif
  
+ #if (defined(FEAT_X11) && (defined(FEAT_TITLE) || defined(FEAT_XCLIPBOARD))) \
+       || defined(PROTO)
  /*
   * Return whether "prog" is currently being executed.
   */
***************
*** 8214,8219 ****
--- 8206,8212 ----
  {
      return prog->re_in_use;
  }
+ #endif
  
  /*
   * Match a regexp against a string.
*** ../vim-8.1.0784/src/screen.c        2019-01-19 17:43:03.425449092 +0100
--- src/screen.c        2019-01-20 15:27:17.318620734 +0100
***************
*** 263,268 ****
--- 263,269 ----
      }
  }
  
+ #if defined(FEAT_SIGNS) || defined(PROTO)
      void
  redraw_buf_line_later(buf_T *buf, linenr_T lnum)
  {
***************
*** 273,279 ****
--- 274,282 ----
                                                  && lnum < wp->w_botline)
            redrawWinline(wp, lnum);
  }
+ #endif
  
+ #if defined(FEAT_JOB_CHANNEL) || defined(PROTO)
      void
  redraw_buf_and_status_later(buf_T *buf, int type)
  {
***************
*** 294,300 ****
--- 297,305 ----
        }
      }
  }
+ #endif
  
+ #if defined(FEAT_TERMRESPONSE) || defined(PROTO)
  /*
   * Redraw as soon as possible.  When the command line is not scrolled redraw
   * right away and restore what was on the command line.
***************
*** 439,444 ****
--- 444,450 ----
  
      return ret;
  }
+ #endif
  
  /*
   * Invoked after an asynchronous callback is called.
***************
*** 929,935 ****
  }
  #endif
  
! #if defined(FEAT_SIGNS) || defined(PROTO)
      void
  update_debug_sign(buf_T *buf, linenr_T lnum)
  {
--- 935,941 ----
  }
  #endif
  
! #if defined(FEAT_NETBEANS_INTG) || defined(PROTO)
      void
  update_debug_sign(buf_T *buf, linenr_T lnum)
  {
***************
*** 11294,11299 ****
--- 11300,11306 ----
  }
  #endif
  
+ #if defined(FEAT_EVAL) || defined(PROTO)
  /*
   * Return the current cursor column. This is the actual position on the
   * screen. First column is 0.
***************
*** 11313,11315 ****
--- 11320,11323 ----
  {
      return screen_cur_row;
  }
+ #endif
*** ../vim-8.1.0784/src/search.c        2019-01-19 17:43:03.425449092 +0100
--- src/search.c        2019-01-20 15:27:17.322620707 +0100
***************
*** 476,481 ****
--- 476,482 ----
      return FALSE;
  }
  
+ #if defined(FEAT_EVAL) || defined(PROTO)
      char_u *
  last_csearch(void)
  {
***************
*** 510,515 ****
--- 511,517 ----
        vim_memset(lastc_bytes, 0, sizeof(lastc_bytes));
  #endif
  }
+ #endif
  
      void
  set_csearch_direction(int cdir)
*** ../vim-8.1.0784/src/syntax.c        2019-01-19 17:43:03.429449066 +0100
--- src/syntax.c        2019-01-20 15:27:17.322620707 +0100
***************
*** 8887,8892 ****
--- 8887,8893 ----
      return (table->ga_len - 1 + ATTR_OFF);
  }
  
+ #if defined(FEAT_TERMINAL) || defined(PROTO)
  /*
   * Get an attribute index for a cterm entry.
   * Uses an existing entry when possible or adds one when needed.
***************
*** 8906,8913 ****
      at_en.ae_u.cterm.bg_color = bg;
      return get_attr_entry(&cterm_attr_table, &at_en);
  }
  
! #if defined(FEAT_TERMGUICOLORS) || defined(PROTO)
  /*
   * Get an attribute index for a 'termguicolors' entry.
   * Uses an existing entry when possible or adds one when needed.
--- 8907,8915 ----
      at_en.ae_u.cterm.bg_color = bg;
      return get_attr_entry(&cterm_attr_table, &at_en);
  }
+ #endif
  
! #if (defined(FEAT_TERMINAL) && defined(FEAT_TERMGUICOLORS)) || defined(PROTO)
  /*
   * Get an attribute index for a 'termguicolors' entry.
   * Uses an existing entry when possible or adds one when needed.
***************
*** 8935,8941 ****
  }
  #endif
  
! #if defined(FEAT_GUI) || defined(PROTO)
  /*
   * Get an attribute index for a cterm entry.
   * Uses an existing entry when possible or adds one when needed.
--- 8937,8943 ----
  }
  #endif
  
! #if (defined(FEAT_TERMINAL) && defined(FEAT_GUI)) || defined(PROTO)
  /*
   * Get an attribute index for a cterm entry.
   * Uses an existing entry when possible or adds one when needed.
*** ../vim-8.1.0784/src/term.c  2019-01-19 17:43:03.429449066 +0100
--- src/term.c  2019-01-20 15:27:17.322620707 +0100
***************
*** 2838,2843 ****
--- 2838,2844 ----
  static int winpos_y = -1;
  static int did_request_winpos = 0;
  
+ #  if (defined(FEAT_EVAL) && defined(HAVE_TGETENT)) || defined(PROTO)
  /*
   * Try getting the Vim window position from the terminal.
   * Returns OK or FAIL.
***************
*** 2885,2890 ****
--- 2886,2892 ----
  
      return FALSE;
  }
+ #  endif
  # endif
  
      void
*** ../vim-8.1.0784/src/terminal.c      2019-01-17 13:04:05.761227512 +0100
--- src/terminal.c      2019-01-20 15:27:17.322620707 +0100
***************
*** 2307,2341 ****
      return ret;
  }
  
- /*
-  * Called when a job has finished.
-  * This updates the title and status, but does not close the vterm, because
-  * there might still be pending output in the channel.
-  */
-     void
- term_job_ended(job_T *job)
- {
-     term_T *term;
-     int           did_one = FALSE;
- 
-     for (term = first_term; term != NULL; term = term->tl_next)
-       if (term->tl_job == job)
-       {
-           VIM_CLEAR(term->tl_title);
-           VIM_CLEAR(term->tl_status_text);
-           redraw_buf_and_status_later(term->tl_buffer, VALID);
-           did_one = TRUE;
-       }
-     if (did_one)
-       redraw_statuslines();
-     if (curbuf->b_term != NULL)
-     {
-       if (curbuf->b_term->tl_job == job)
-           maketitle();
-       update_cursor(curbuf->b_term, TRUE);
-     }
- }
- 
      static void
  may_toggle_cursor(term_T *term)
  {
--- 2307,2312 ----
***************
*** 3072,3078 ****
  
        p_more = FALSE;
        msg_row = Rows - 1;
!       msg_puts((char_u *)"\n");
        p_more = save_p_more;
        --term->tl_toprow;
      }
--- 3043,3049 ----
  
        p_more = FALSE;
        msg_row = Rows - 1;
!       msg_puts("\n");
        p_more = save_p_more;
        --term->tl_toprow;
      }
***************
*** 5408,5418 ****
--- 5379,5391 ----
        }
  }
  
+ #if defined(FEAT_GUI) || defined(PROTO)
      job_T *
  term_getjob(term_T *term)
  {
      return term != NULL ? term->tl_job : NULL;
  }
+ #endif
  
  # if defined(WIN3264) || defined(PROTO)
  
*** ../vim-8.1.0784/src/ui.c    2019-01-19 17:43:03.425449092 +0100
--- src/ui.c    2019-01-20 15:27:17.322620707 +0100
***************
*** 1589,1594 ****
--- 1589,1595 ----
  #endif
  }
  
+ #if (defined(FEAT_X11) && defined(USE_SYSTEM)) || defined(PROTO)
      int
  clip_gen_owner_exists(VimClipboard *cbd UNUSED)
  {
***************
*** 1603,1608 ****
--- 1604,1610 ----
      return TRUE;
  #endif
  }
+ #endif
  
  #endif /* FEAT_CLIPBOARD */
  
***************
*** 2574,2585 ****
--- 2576,2590 ----
  {
  }
  
+ #if (defined(FEAT_X11) && defined(FEAT_XCLIPBOARD) && defined(USE_SYSTEM)) \
+       || defined(PROTO)
      int
  clip_x11_owner_exists(VimClipboard *cbd)
  {
      return XGetSelectionOwner(X_DISPLAY, cbd->sel_atom) != None;
  }
  #endif
+ #endif
  
  #if defined(FEAT_XCLIPBOARD) || defined(FEAT_GUI_X11) \
      || defined(FEAT_GUI_GTK) || defined(PROTO)
*** ../vim-8.1.0784/src/userfunc.c      2019-01-19 17:43:03.429449066 +0100
--- src/userfunc.c      2019-01-20 15:27:17.322620707 +0100
***************
*** 2560,2565 ****
--- 2560,2566 ----
      return n;
  }
  
+ #if defined(FEAT_PYTHON) || defined(FEAT_PYTHON3) || defined(PROTO)
      char_u *
  get_expanded_name(char_u *name, int check)
  {
***************
*** 2575,2580 ****
--- 2576,2582 ----
      vim_free(p);
      return NULL;
  }
+ #endif
  
  #if defined(FEAT_PROFILE) || defined(PROTO)
  /*
*** ../vim-8.1.0784/src/version.c       2019-01-19 21:12:21.561634437 +0100
--- src/version.c       2019-01-20 15:28:47.598036085 +0100
***************
*** 793,794 ****
--- 793,796 ----
  {   /* Add new patch number below this line */
+ /**/
+     785,
  /**/

-- 
hundred-and-one symptoms of being an internet addict:
269. You wonder how you can make your dustbin produce Sesame Street's
     Oscar's the Garbage Monster song when you empty it.

 /// Bram Moolenaar -- [email protected] -- http://www.Moolenaar.net   \\\
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
\\\  an exciting new programming language -- http://www.Zimbu.org        ///
 \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

-- 
-- 
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- 
You received this message because you are subscribed to the Google Groups 
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Raspunde prin e-mail lui