patch 7.4.2117
Problem:    Deleting an augroup that still has autocmds does not give a
            warning.  The next defined augroup takes its place.
Solution:   Give a warning and prevent the index being used for another group
            name.
diff --git a/src/testdir/test_autocmd.vim b/src/testdir/test_autocmd.vim
index b9d5cfe..d856d32 100644
--- a/src/testdir/test_autocmd.vim
+++ b/src/testdir/test_autocmd.vim
@@ -151,3 +151,20 @@
   au! vimBarTest|echo 'hello'
   call assert_equal(1, len(split(execute('au vimBarTest'), "\n")))
 endfunc
+
+func Test_augroup_warning()
+  augroup TheWarning
+    au VimEnter * echo 'entering'
+  augroup END
+  call assert_true(match(execute('au VimEnter'), "TheWarning.*VimEnter") >= 0)
+  redir => res
+  augroup! TheWarning
+  redir END
+  call assert_true(match(res, "W19:") >= 0)
+  call assert_true(match(execute('au VimEnter'), "-Deleted-.*VimEnter") >= 0)
+
+  " check "Another" does not take the pace of the deleted entry
+  augroup Another
+  augroup END
+  call assert_true(match(execute('au VimEnter'), "-Deleted-.*VimEnter") >= 0)
+endfunc