v8/test/inspector/debugger/class-private-methods-nested-super-expected.txt
Joyee Cheung 1e6294d3c3 [class] initialize brand after super() in nested arrow function
Handle the case of nested super() by checking if the class scope
contains a private brand. In this case the ContextScope chain
is different from the actual context chain so this added back
the AddPrivateBrand() runtime function but with the additional
step of walking the context chain to get the correct class
context that will be stored as the value of the brand property
for the debugger.

Bug: v8:12354
Change-Id: Ieeb9b9d6372bfbb1a39c4c2dc9e9848e9109f02a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3275137
Reviewed-by: Shu-yu Guo <syg@chromium.org>
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Marja Hölttä <marja@chromium.org>
Commit-Queue: Joyee Cheung <joyee@igalia.com>
Cr-Commit-Position: refs/heads/main@{#79032}
2022-02-10 14:05:48 +00:00

67 lines
1.4 KiB
Plaintext

Test getting private class methods from an instance that calls nested super()
Running test: testScopesPaused
properties after super() is called in IIFE
[
[0] : {
name : #b
value : {
className : Function
description : #b() {}
objectId : <objectId>
type : function
}
}
]
privateProperties after super() is called in arrow function
[
[0] : {
name : #b
value : {
className : Function
description : #b() {}
objectId : <objectId>
type : function
}
}
[1] : {
get : {
className : Function
description : get #c() {}
objectId : <objectId>
type : function
}
name : #c
}
]
privateProperties after super() is called in eval()
[
[0] : {
name : #b
value : {
className : Function
description : #b() {}
objectId : <objectId>
type : function
}
}
[1] : {
get : {
className : Function
description : get #c() {}
objectId : <objectId>
type : function
}
name : #c
}
[2] : {
name : #d
set : {
className : Function
description : set #d(val) {}
objectId : <objectId>
type : function
}
}
]