00c7e2a2c5
Added null check when printing the brand with --print-ast. Bug: chromium:961507, chromium:961508 Original change's description: > [class] implement private method declarations > > This patch implements the declarations of private methods, the access > of private methods would be left to a future patch. > When a private methods declaration is encountered, we now: > > - Create a brand symbol during class evaluation and store it in the > context. > - Create the closures for the private methods > - Load the brand from the context and store it in the instance in the > constructor. > > Design: https://docs.google.com/document/d/1T-Ql6HOIH2U_8YjWkwK2rTfywwb7b3Qe8d3jkz72KwA/edit# > > Bug: v8:8330 > Change-Id: I2d695cbdc8a7367ddc7620d627b318f779d36150 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1568708 > Commit-Queue: Joyee Cheung <joyee@igalia.com> > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Cr-Commit-Position: refs/heads/master@{#61387} Change-Id: I3bf465f70c27914c9ec19f3f59ae018b28c9a866 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1605521 Commit-Queue: Joyee Cheung <joyee@igalia.com> Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#61459}
8 lines
264 B
JavaScript
8 lines
264 B
JavaScript
// Copyright 2019 the V8 project authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
// Flags: --print-ast
|
|
|
|
const foo = new class bar extends async function () {}.constructor {}();
|