patch 8.1.1513: all popup functionality is in functions, except :popupclear

Problem:    All popup functionality is in functions, except :popupclear.
Solution:   Add popup_clear() for consistency.  Also rename sound_stopall() to
            sound_clear().
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 2d8bf52..48b848d 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -812,6 +812,7 @@
 #endif
 #ifdef FEAT_TEXT_PROP
     {"popup_atcursor",	2, 2, f_popup_atcursor},
+    {"popup_clear",	0, 0, f_popup_clear},
     {"popup_close",	1, 2, f_popup_close},
     {"popup_create",	2, 2, f_popup_create},
     {"popup_getoptions", 1, 1, f_popup_getoptions},
@@ -928,10 +929,10 @@
 #endif
     {"sort",		1, 3, f_sort},
 #ifdef FEAT_SOUND
+    {"sound_clear",	0, 0, f_sound_clear},
     {"sound_playevent",	1, 2, f_sound_playevent},
     {"sound_playfile",	1, 2, f_sound_playfile},
     {"sound_stop",	1, 1, f_sound_stop},
-    {"sound_stopall",	0, 0, f_sound_stopall},
 #endif
     {"soundfold",	1, 1, f_soundfold},
     {"spellbadword",	0, 1, f_spellbadword},
diff --git a/src/ex_cmdidxs.h b/src/ex_cmdidxs.h
index 2aae4b6..0103a17 100644
--- a/src/ex_cmdidxs.h
+++ b/src/ex_cmdidxs.h
@@ -21,16 +21,16 @@
   /* n */ 285,
   /* o */ 305,
   /* p */ 317,
-  /* q */ 357,
-  /* r */ 360,
-  /* s */ 380,
-  /* t */ 448,
-  /* u */ 493,
-  /* v */ 504,
-  /* w */ 522,
-  /* x */ 536,
-  /* y */ 546,
-  /* z */ 547
+  /* q */ 356,
+  /* r */ 359,
+  /* s */ 379,
+  /* t */ 447,
+  /* u */ 492,
+  /* v */ 503,
+  /* w */ 521,
+  /* x */ 535,
+  /* y */ 545,
+  /* z */ 546
 };
 
 /*
@@ -56,7 +56,7 @@
   /* m */ {  1,  0,  0,  0,  7,  0,  0,  0,  0,  0, 10,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 16 },
   /* n */ {  0,  1,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  5,  8, 10,  0,  0,  0,  0,  0, 17,  0,  0,  0,  0,  0 },
   /* o */ {  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  1,  2,  5,  0,  0,  0,  0,  0,  0,  9,  0, 11,  0,  0,  0 },
-  /* p */ {  1,  0,  3,  0,  4,  0,  0,  0,  0,  0,  0,  0,  0,  0,  7, 10,  0,  0, 17, 18, 27,  0, 28,  0, 29,  0 },
+  /* p */ {  1,  0,  3,  0,  4,  0,  0,  0,  0,  0,  0,  0,  0,  0,  7,  9,  0,  0, 16, 17, 26,  0, 27,  0, 28,  0 },
   /* q */ {  2,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0 },
   /* r */ {  0,  0,  0,  0,  0,  0,  0,  0, 12,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0, 14, 19,  0,  0,  0,  0 },
   /* s */ {  2,  6, 15,  0, 19, 23,  0, 25, 26,  0,  0, 29, 31, 35, 39, 41,  0, 49,  0, 50,  0, 62, 63,  0, 64,  0 },
@@ -69,4 +69,4 @@
   /* z */ {  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0,  0 }
 };
 
-static const int command_count = 560;
+static const int command_count = 559;
diff --git a/src/ex_cmds.h b/src/ex_cmds.h
index 9c913a8..5ec69be 100644
--- a/src/ex_cmds.h
+++ b/src/ex_cmds.h
@@ -1091,9 +1091,6 @@
 EX(CMD_popup,		"popup",	ex_popup,
 			NEEDARG|EXTRA|BANG|TRLBAR|NOTRLCOM|CMDWIN,
 			ADDR_NONE),
-EX(CMD_popupclear,	"popupclear",	ex_popupclear,
-			TRLBAR,
-			ADDR_NONE),
 EX(CMD_ppop,		"ppop",		ex_ptag,
 			RANGE|BANG|COUNT|TRLBAR|ZEROR,
 			ADDR_OTHER),
diff --git a/src/popupwin.c b/src/popupwin.c
index 000bed9..c512369 100644
--- a/src/popupwin.c
+++ b/src/popupwin.c
@@ -711,6 +711,15 @@
 }
 
 /*
+ * popup_clear()
+ */
+    void
+f_popup_clear(typval_T *argvars UNUSED, typval_T *rettv UNUSED)
+{
+    close_all_popups();
+}
+
+/*
  * popup_create({text}, {options})
  */
     void
@@ -928,12 +937,6 @@
 	popup_close(curtab->tp_first_popupwin->w_id);
 }
 
-    void
-ex_popupclear(exarg_T *eap UNUSED)
-{
-    close_all_popups();
-}
-
 /*
  * popup_move({id}, {options})
  */
diff --git a/src/proto/popupwin.pro b/src/proto/popupwin.pro
index a50e7b7..2a377a7 100644
--- a/src/proto/popupwin.pro
+++ b/src/proto/popupwin.pro
@@ -1,5 +1,6 @@
 /* popupwin.c */
 void popup_adjust_position(win_T *wp);
+void f_popup_clear(typval_T *argvars, typval_T *rettv);
 void f_popup_create(typval_T *argvars, typval_T *rettv);
 void f_popup_atcursor(typval_T *argvars, typval_T *rettv);
 int popup_any_visible(void);
@@ -9,7 +10,6 @@
 void popup_close(int id);
 void popup_close_tabpage(tabpage_T *tp, int id);
 void close_all_popups(void);
-void ex_popupclear(exarg_T *eap);
 void f_popup_move(typval_T *argvars, typval_T *rettv);
 void f_popup_getpos(typval_T *argvars, typval_T *rettv);
 void f_popup_getoptions(typval_T *argvars, typval_T *rettv);
diff --git a/src/proto/sound.pro b/src/proto/sound.pro
index 43e4727..cf8439a 100644
--- a/src/proto/sound.pro
+++ b/src/proto/sound.pro
@@ -2,6 +2,6 @@
 void f_sound_playevent(typval_T *argvars, typval_T *rettv);
 void f_sound_playfile(typval_T *argvars, typval_T *rettv);
 void f_sound_stop(typval_T *argvars, typval_T *rettv);
-void f_sound_stopall(typval_T *argvars, typval_T *rettv);
+void f_sound_clear(typval_T *argvars, typval_T *rettv);
 void sound_free(void);
 /* vim: set ft=c : */
diff --git a/src/sound.c b/src/sound.c
index ac6c377..e28ccff 100644
--- a/src/sound.c
+++ b/src/sound.c
@@ -156,12 +156,18 @@
     sound_play_common(argvars, rettv, FALSE);
 }
 
+/*
+ * implementation of sound_playfile({path} [, {callback}])
+ */
     void
 f_sound_playfile(typval_T *argvars, typval_T *rettv)
 {
     sound_play_common(argvars, rettv, TRUE);
 }
 
+/*
+ * implementation of sound_stop({id})
+ */
     void
 f_sound_stop(typval_T *argvars, typval_T *rettv UNUSED)
 {
@@ -169,8 +175,11 @@
 	ca_context_cancel(context, tv_get_number(&argvars[0]));
 }
 
+/*
+ * implementation of sound_clear()
+ */
     void
-f_sound_stopall(typval_T *argvars UNUSED, typval_T *rettv UNUSED)
+f_sound_clear(typval_T *argvars UNUSED, typval_T *rettv UNUSED)
 {
     if (context != NULL)
     {
diff --git a/src/testdir/test_popupwin.vim b/src/testdir/test_popupwin.vim
index f275a49..51eed30 100644
--- a/src/testdir/test_popupwin.vim
+++ b/src/testdir/test_popupwin.vim
@@ -61,7 +61,7 @@
   call term_wait(buf)
   call term_sendkeys(buf, "0")
   call term_wait(buf)
-  call term_sendkeys(buf, ":popupclear\<CR>")
+  call term_sendkeys(buf, ":call popup_clear()\<CR>")
   call VerifyScreenDump(buf, 'Test_popupwin_08', {})
 
   " clean up
@@ -271,7 +271,7 @@
   call assert_equal(0, popup_getpos(winid).visible)
   quit
   call assert_equal(1, popup_getpos(winid).visible)
-  popupclear
+  call popup_clear()
 
   " global popup is visible in any tab
   let winid = popup_create("text", {'tab': -1})
@@ -280,7 +280,7 @@
   call assert_equal(1, popup_getpos(winid).visible)
   quit
   call assert_equal(1, popup_getpos(winid).visible)
-  popupclear
+  call popup_clear()
 endfunc
 
 func Test_popup_valid_arguments()
@@ -288,13 +288,13 @@
   let winid = popup_create("text", {"col": 0})
   let pos = popup_getpos(winid)
   call assert_inrange(&columns / 2 - 1, &columns / 2 + 1, pos.col)
-  popupclear
+  call popup_clear()
 
   " using cursor column has minimum value of 1
   let winid = popup_create("text", {"col": 'cursor-100'})
   let pos = popup_getpos(winid)
   call assert_equal(1, pos.col)
-  popupclear
+  call popup_clear()
 
   " center
   let winid = popup_create("text", {"pos": 'center'})
@@ -303,57 +303,57 @@
   call assert_inrange(around - 1, around + 1, pos.col)
   let around = (&lines - pos.height) / 2
   call assert_inrange(around - 1, around + 1, pos.line)
-  popupclear
+  call popup_clear()
 endfunc
 
 func Test_popup_invalid_arguments()
   call assert_fails('call popup_create(666, {})', 'E714:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", "none")', 'E715:')
-  popupclear
+  call popup_clear()
 
   call assert_fails('call popup_create("text", {"col": "xxx"})', 'E475:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"col": "cursor8"})', 'E15:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"col": "cursor+x"})', 'E15:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"col": "cursor+8x"})', 'E15:')
-  popupclear
+  call popup_clear()
 
   call assert_fails('call popup_create("text", {"line": "xxx"})', 'E475:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"line": "cursor8"})', 'E15:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"line": "cursor+x"})', 'E15:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"line": "cursor+8x"})', 'E15:')
-  popupclear
+  call popup_clear()
 
   call assert_fails('call popup_create("text", {"pos": "there"})', 'E475:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"padding": "none"})', 'E714:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"border": "none"})', 'E714:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"borderhighlight": "none"})', 'E714:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create("text", {"borderchars": "none"})', 'E714:')
-  popupclear
+  call popup_clear()
 
   call assert_fails('call popup_create([{"text": "text"}, 666], {})', 'E715:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create([{"text": "text", "props": "none"}], {})', 'E714:')
-  popupclear
+  call popup_clear()
   call assert_fails('call popup_create([{"text": "text", "props": ["none"]}], {})', 'E715:')
-  popupclear
+  call popup_clear()
 endfunc
 
 func Test_win_execute_closing_curwin()
   split
   let winid = popup_create('some text', {})
   call assert_fails('call win_execute(winid, winnr() .. "close")', 'E994')
-  popupclear
+  call popup_clear()
 endfunc
 
 func Test_win_execute_not_allowed()
@@ -374,7 +374,7 @@
   call assert_fails('call win_execute(winid, "wincmd w")', 'E994:')
   call assert_fails('call win_execute(winid, "wincmd t")', 'E994:')
   call assert_fails('call win_execute(winid, "wincmd b")', 'E994:')
-  popupclear
+  call popup_clear()
 endfunc
 
 func Test_popup_with_wrap()
@@ -770,7 +770,7 @@
   call assert_equal(-1, winbufnr(winid))
 
   delfunc MyPopupFilter
-  popupclear
+  call popup_clear()
 endfunc
 
 func Test_popup_close_callback()
@@ -944,7 +944,7 @@
     endfor
   endfor
 
-  popupclear
+  call popup_clear()
   %bwipe!
 endfunc
 
@@ -1010,7 +1010,7 @@
   call popup_close( p )
   redraw
 
-  popupclear
+  call popup_clear()
   %bwipe!
 endfunc
 
@@ -1026,7 +1026,7 @@
   " trigger the check for last_cursormoved by going into insert mode
   call feedkeys("li\<Esc>", 'xt')
   call assert_equal({}, popup_getpos(winid))
-  popupclear
+  call popup_clear()
 
   exe "normal gg0/word\<CR>"
   let winid = popup_atcursor('text', {'moved': 'word'})
@@ -1034,7 +1034,7 @@
   call assert_equal(1, popup_getpos(winid).visible)
   call feedkeys("hi\<Esc>", 'xt')
   call assert_equal({}, popup_getpos(winid))
-  popupclear
+  call popup_clear()
 
   exe "normal gg0/word\<CR>"
   let winid = popup_atcursor('text', {'moved': 'word'})
@@ -1046,7 +1046,7 @@
   call assert_equal(1, popup_getpos(winid).visible)
   call feedkeys("eli\<Esc>", 'xt')
   call assert_equal({}, popup_getpos(winid))
-  popupclear
+  call popup_clear()
 
   " WORD is the default
   exe "normal gg0/WORD\<CR>"
@@ -1059,7 +1059,7 @@
   call assert_equal(1, popup_getpos(winid).visible)
   call feedkeys("Eli\<Esc>", 'xt')
   call assert_equal({}, popup_getpos(winid))
-  popupclear
+  call popup_clear()
 
   exe "normal gg0/word\<CR>"
   let winid = popup_atcursor('text', {'moved': [5, 10]})
@@ -1070,7 +1070,7 @@
   call assert_equal(1, popup_getpos(winid).visible)
   call feedkeys("eli\<Esc>", 'xt')
   call assert_equal({}, popup_getpos(winid))
-  popupclear
+  call popup_clear()
 
   bwipe!
   call test_override('ALL', 0)
diff --git a/src/testdir/test_sound.vim b/src/testdir/test_sound.vim
index e47c677..1e2c455 100644
--- a/src/testdir/test_sound.vim
+++ b/src/testdir/test_sound.vim
@@ -41,7 +41,7 @@
   let id2 = sound_playfile(fname, 'PlayCallback')
   call assert_true(id2 > 0)
   sleep 20m
-  call sound_stopall()
+  call sound_clear()
   call assert_equal(id2, g:id)
   call assert_equal(1, g:result)
 endfunc
diff --git a/src/version.c b/src/version.c
index 3b434a3..76b874e 100644
--- a/src/version.c
+++ b/src/version.c
@@ -778,6 +778,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1513,
+/**/
     1512,
 /**/
     1511,