Bug 225453

Summary: [JSC] Wrong names set for anonymous classes from static class fields in some cases
Product: WebKit Reporter: Caio Lima <ticaiolima>
Component: JavaScriptCoreAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Safari Technology Preview   
Hardware: Unspecified   
OS: Unspecified   

Description Caio Lima 2021-05-06 06:13:01 PDT
The following example is setting the wrong name for anonymous classes:

```
class C { static InnerClass = class { static f = this.name; } }
 
print(C.InnerClass.name); // prints “”, but should print “InnerClass”
```

The following example does it correctly:

```
class C { static InnerClass = class { static f; } }
 
print(C.InnerClass.name); // prints “InnerClass”
```

Both Firefox and Chrome are returning “InnerClass” for both examples. This example came up from a spec bug pointed out on https://github.com/tc39/ecma262/pull/1668#issuecomment-608189621.
Comment 1 Radar WebKit Bug Importer 2021-05-13 06:13:14 PDT
<rdar://problem/77963278>