In change set r197869, logic was added to handle String.match(re) when the RegExp has both the global and sticky flags set. In the ES6 spec, section 21.2.5.6 step 6 that describes operation when the global flag is set doesn't reference the sticky flag or any operational changes due to the sticky flag. When the global flag is not set, step 5 of the same section says that the operation is the same s RegExpExec, which does have sticky dependent behavior. Therefore, the logic that handles when both the sticky and global flags are set should be removed.
Created attachment 273637 [details] Patch
Comment on attachment 273637 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=273637&action=review > Source/JavaScriptCore/runtime/StringPrototype.cpp:1057 > + if (!global && (sticky = regExp->sticky())) { I think this is easier to read if the sticky isn't assigned in the "if"
Committed r197963: <http://trac.webkit.org/changeset/197963>