1. 16 Mar, 2020 1 commit
    • Joyee Cheung's avatar
      [class] error when accessing unused static private method at debug time · f2fd4923
      Joyee Cheung authored
      At the moment when the static private method is unused
      in source code (either explicitly or through eval) but is accessed
      at runtime through the debugger, and there are no other potential
      references to the class variable in the source code otherwise,
      the reference to the class variable is lost here since the class
      variable would not be context-allocated, then we could not rebuild
      a proper brand check for it.
      
      For now, a ReferenceError would be thrown and the method is considered
      "optimized away", similar to how unused ordinary methods in closures
      work. Before this patch it would DCHECK when generating bytecode
      for the debugger instead of throwing errors.
      
      Bug: v8:9839, v8:8330
      Change-Id: I5d63131a7bdba141d01a3e6459bc27d0f5953c1a
      Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2095637
      Commit-Queue: Joyee Cheung <joyee@igalia.com>
      Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
      Reviewed-by: 's avatarShu-yu Guo <syg@chromium.org>
      Cr-Commit-Position: refs/heads/master@{#66734}
      f2fd4923