1. 08 Jan, 2016 1 commit
  2. 26 Nov, 2015 1 commit
  3. 25 Nov, 2015 1 commit
    • bmeurer's avatar
      [es6] Correct parsing of regular expression literal flags. · 2732a6ad
      bmeurer authored
      ES6 section 12.2.8.1 states that flags for regular expression literals
      must be checked during parsing and invalid flags are early errors. This
      change adapts the Scanner and (Pre)Parser to act according to the spec.
      
      This is also a prerequisite to unify the handling of literal creation
      (for Objects, Arrays, Regexps, and at some point Classes).
      
      R=yangguo@chromium.org
      
      Review URL: https://codereview.chromium.org/1472323002
      
      Cr-Commit-Position: refs/heads/master@{#32273}
      2732a6ad
  4. 17 Nov, 2015 1 commit
  5. 21 Oct, 2015 1 commit
    • vogelheim's avatar
      Always dispose backing store. · 7770e021
      vogelheim authored
      (With a v8::Vector, the client is responsible for memory management.
       I think there can be a situation where the Vector has a char[1] backing
       store with '\0' in it, in which case the current code would leak.
       If we always Dispose() the backing store this should be avoided.
       Since dispose will delete[] the actual backing store, this should
       also work then the backing store is nullptr.)
      
      R=jochen@chromium.org
      BUG=chromium:525885
      LOG=N
      
      Review URL: https://codereview.chromium.org/1410543005
      
      Cr-Commit-Position: refs/heads/master@{#31446}
      7770e021
  6. 30 Sep, 2015 1 commit
  7. 28 Aug, 2015 1 commit
    • littledan's avatar
      Sloppy-mode let parsing · decc7b09
      littledan authored
      This patch makes 'let' a contextual keyword in both strict and sloppy mode.
      It behaves as a keyword when used at the beginning of a StatementListItem
      or lexical declaration at the beginning of a for statement, if it is followed
      by an identifier, [ or {. Implementing this change requires an extra token
      look-ahead by the parser which is only invoked in certain cases (so as to
      avoid parsing RegExps as ECMAScript tokens). This might result in a slowdown
      of the scanner, but performance testing of this patch hasn't yet found much
      of a regression.
      
      BUG=v8:3305
      LOG=Y
      R=adamk,vogelheim
      
      Review URL: https://codereview.chromium.org/1315673009
      
      Cr-Commit-Position: refs/heads/master@{#30451}
      decc7b09
  8. 20 Aug, 2015 1 commit
    • mstarzinger's avatar
      Separate UnicodeCache out into an own file. · 4e39437a
      mstarzinger authored
      This make inclusion of unicode-inl.h in object.h absolete. Now most
      compilation units don't require that header. It also breaks a cycle
      within declarations of the scanner.h header.
      
      This tries to remove includes of "-inl.h" headers from normal ".h"
      headers, thereby reducing the chance of any cyclic dependencies and
      decreasing the average size of our compilation units.
      
      Note that this change still leaves 3 violations of that rule in the
      code, checked with the "tools/check-inline-includes.sh" tool.
      
      R=yangguo@chromium.org
      
      Review URL: https://codereview.chromium.org/1287893006
      
      Cr-Commit-Position: refs/heads/master@{#30268}
      4e39437a
  9. 12 Aug, 2015 1 commit
    • mstarzinger's avatar
      Remove inline header includes from non-inline headers (1). · 00a07bc1
      mstarzinger authored
      This tries to remove includes of "-inl.h" headers from normal ".h"
      headers, thereby reducing the chance of any cyclic dependencies and
      decreasing the average size of our compilation units.
      
      Note that this change still leaves 7 violations of that rule in the
      code. However there now is the "tools/check-inline-includes.sh" tool
      detecting such violations.
      
      R=bmeurer@chromium.org
      
      Review URL: https://codereview.chromium.org/1283033003
      
      Cr-Commit-Position: refs/heads/master@{#30125}
      00a07bc1
  10. 05 Aug, 2015 2 commits
  11. 30 Jun, 2015 1 commit
  12. 26 Jun, 2015 1 commit
  13. 06 May, 2015 1 commit
  14. 04 May, 2015 1 commit
  15. 27 Apr, 2015 1 commit
  16. 22 Apr, 2015 1 commit
  17. 31 Mar, 2015 1 commit
  18. 23 Mar, 2015 1 commit
  19. 13 Mar, 2015 1 commit
  20. 12 Mar, 2015 1 commit
  21. 11 Mar, 2015 1 commit
  22. 04 Mar, 2015 1 commit
  23. 03 Mar, 2015 2 commits
  24. 05 Feb, 2015 1 commit
  25. 08 Jan, 2015 1 commit
  26. 18 Dec, 2014 1 commit
  27. 04 Dec, 2014 2 commits
  28. 03 Dec, 2014 1 commit
  29. 02 Dec, 2014 1 commit
  30. 14 Nov, 2014 1 commit
  31. 07 Nov, 2014 1 commit
    • marja@chromium.org's avatar
      Scanner: disallow unicode escapes in regexp flags. · 2b026851
      marja@chromium.org authored
      The spec explicitly forbids them. V8 never handled them properly either, just
      the Scanner accepted them (it had code to add them literally to the
      LiteralBuffer) and later on, Regexp constructor disallowed them.
      
      According to the spec, unicode escapes in regexp flags should be an early error
      ("It is a Syntax Error if IdentifierPart contains a Unicode escape sequence.").
      
      Note that Scanner is still more relaxed about regexp flags than the
      spec. Especially, it accepts any identifier parts (not just a small set of
      letters) and doesn't check for duplicates.
      
      R=rossberg@chromium.org
      
      Review URL: https://codereview.chromium.org/700373003
      
      Cr-Commit-Position: refs/heads/master@{#25215}
      git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@25215 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      2b026851
  32. 24 Oct, 2014 1 commit
  33. 14 Oct, 2014 1 commit
  34. 10 Oct, 2014 1 commit
    • yangguo@chromium.org's avatar
      Allow identifier code points from supplementary multilingual planes. · 0dd69ec4
      yangguo@chromium.org authored
      ES5.1 section 6 ("Source Text"):
      "Throughout the rest of this document, the phrase “code unit” and the
      word “character” will be used to refer to a 16-bit unsigned value
      used to represent a single 16-bit unit of text."
      
      This changed in ES6 draft section 10.1 ("Source Text"):
      "The ECMAScript code is expressed using Unicode, version 5.1 or later.
      ECMAScript source text is a sequence of code points. All Unicode code
      point values from U+0000 to U+10FFFF, including surrogate code points,
      may occur in source text where permitted by the ECMAScript grammars."
      
      This patch is to reflect this spec change.
      
      BUG=v8:3617
      LOG=Y
      R=jochen@chromium.org
      
      Review URL: https://codereview.chromium.org/640193002
      
      git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24510 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      0dd69ec4
  35. 08 Oct, 2014 1 commit
  36. 16 Sep, 2014 1 commit
  37. 10 Sep, 2014 1 commit