diff --git a/deps/v8/include/v8-version.h b/deps/v8/include/v8-version.h index 3d41a2cb3f..1c3e60f95e 100644 --- a/deps/v8/include/v8-version.h +++ b/deps/v8/include/v8-version.h @@ -11,7 +11,7 @@ #define V8_MAJOR_VERSION 5 #define V8_MINOR_VERSION 0 #define V8_BUILD_NUMBER 71 -#define V8_PATCH_LEVEL 32 +#define V8_PATCH_LEVEL 33 // Use 1 for candidates and 0 otherwise. // (Boolean macro values are not supported by all preprocessors.) diff --git a/deps/v8/src/regexp/regexp-parser.cc b/deps/v8/src/regexp/regexp-parser.cc index 2fe6fde82a..46c593c264 100644 --- a/deps/v8/src/regexp/regexp-parser.cc +++ b/deps/v8/src/regexp/regexp-parser.cc @@ -358,13 +358,17 @@ RegExpTree* RegExpParser::ParseDisjunction() { uc32 p = Next(); Advance(2); if (unicode()) { - ZoneList* ranges = ParsePropertyClass(); - if (ranges == nullptr) { - return ReportError(CStrVector("Invalid property name")); + if (FLAG_harmony_regexp_property) { + ZoneList* ranges = ParsePropertyClass(); + if (ranges == nullptr) { + return ReportError(CStrVector("Invalid property name")); + } + RegExpCharacterClass* cc = + new (zone()) RegExpCharacterClass(ranges, p == 'P'); + builder->AddCharacterClass(cc); + } else { + return ReportError(CStrVector("Invalid escape")); } - RegExpCharacterClass* cc = - new (zone()) RegExpCharacterClass(ranges, p == 'P'); - builder->AddCharacterClass(cc); } else { builder->AddCharacter(p); }