patch 8.0.0133
Problem:    "2;'(" causes ml_get errors in an empty buffer.  (Dominique Pelle)
Solution:   Check the cursor line earlier.
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 439467c..2b0f15e 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -2277,7 +2277,11 @@
 	if (*ea.cmd == ';')
 	{
 	    if (!ea.skip)
+	    {
 		curwin->w_cursor.lnum = ea.line2;
+		/* don't leave the cursor on an illegal line */
+		check_cursor_lnum();
+	    }
 	}
 	else if (*ea.cmd != ',')
 	    break;
@@ -2293,9 +2297,6 @@
 	    ea.addr_count = 0;
     }
 
-    /* Don't leave the cursor on an illegal line (caused by ';') */
-    check_cursor_lnum();
-
 /*
  * 5. Parse the command.
  */
diff --git a/src/testdir/test_cmdline.vim b/src/testdir/test_cmdline.vim
index c48a811..96fee0b 100644
--- a/src/testdir/test_cmdline.vim
+++ b/src/testdir/test_cmdline.vim
@@ -234,3 +234,10 @@
   call feedkeys(":abc def\<S-Left>\<C-U>\<C-B>\"\<CR>", 'tx')
   call assert_equal('"def', @:)
 endfunc
+
+func Test_illegal_address()
+  new
+  2;'(
+  2;')
+  quit
+endfunc
diff --git a/src/version.c b/src/version.c
index b21e60a..2e3cb05 100644
--- a/src/version.c
+++ b/src/version.c
@@ -765,6 +765,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    133,
+/**/
     132,
 /**/
     131,