# HG changeset patch # User Bram Moolenaar # Date 1370460637 -7200 # Node ID 532a9855bd30d28cc14848ce5136658a273bc999 # Parent 7bb5ac89e9adb973f7b00e0317fccdadc20518ef updated for version 7.3.1127 Problem: No error for using empty \%[]. Solution: Give error message. diff --git a/src/regexp.c b/src/regexp.c --- a/src/regexp.c +++ b/src/regexp.c @@ -366,7 +366,7 @@ static char_u e_z_not_allowed[] = N_("E6 static char_u e_z1_not_allowed[] = N_("E67: \\z1 et al. not allowed here"); #endif static char_u e_missing_sb[] = N_("E69: Missing ] after %s%%["); - +static char_u e_empty_sb[] = N_("E70: Empty %s%%[]"); #define NOT_MULTI 0 #define MULTI_ONE 1 #define MULTI_MULT 2 @@ -2227,7 +2227,7 @@ regatom(flagp) return NULL; } if (ret == NULL) - EMSG2_RET_NULL(_("E70: Empty %s%%[]"), + EMSG2_RET_NULL(_(e_empty_sb), reg_magic == MAGIC_ALL); lastbranch = regnode(BRANCH); br = regnode(NOTHING); diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c --- a/src/regexp_nfa.c +++ b/src/regexp_nfa.c @@ -977,6 +977,9 @@ nfa_regatom() reg_magic == MAGIC_ALL); EMIT(c); } + if (n == 0) + EMSG2_RET_FAIL(_(e_empty_sb), + reg_magic == MAGIC_ALL); EMIT(NFA_OPT_CHARS); EMIT(n); break; diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -729,6 +729,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1127, +/**/ 1126, /**/ 1125,