diff --git a/src/vim9compile.c b/src/vim9compile.c
index 117bfd2..12400a3 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -4369,13 +4369,33 @@
     }
     else
     {
+	char_u *end;
+	char_u *pat;
+	char_u *tofree = NULL;
+	size_t len;
+
 	// Push v:exception, push {expr} and MATCH
 	generate_instr_type(cctx, ISN_PUSHEXC, &t_string);
 
-	if (compile_expr1(&p, cctx) == FAIL)
-	    return NULL;
+	end = skip_regexp(p + 1, *p, TRUE, &tofree);
+	if (*end != *p)
+	{
+	    semsg(_("E1067: Separator mismatch: %s"), p);
+	    vim_free(tofree);
+	    return FAIL;
+	}
+	if (tofree == NULL)
+	    len = end - (p + 1);
+	else
+	    len = end - (tofree + 1);
+	pat = vim_strnsave(p + 1, len);
+	vim_free(tofree);
+	p += len + 2;
+	if (pat == NULL)
+	    return FAIL;
+	if (generate_PUSHS(cctx, pat) == FAIL)
+	    return FAIL;
 
-	// TODO: check for strings?
 	if (generate_COMPARE(cctx, EXPR_MATCH, FALSE) == FAIL)
 	    return NULL;
 
