-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix(es/compat): Fix handling of private members in optional chaining …
- Loading branch information
Showing
3 changed files
with
60 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
7 changes: 7 additions & 0 deletions
7
crates/swc_ecma_transforms_compat/tests/optional-chaining/issue-7561/input.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
class Foo { | ||
#x; | ||
|
||
test() { | ||
this?.y.#x; | ||
} | ||
} |
6 changes: 6 additions & 0 deletions
6
crates/swc_ecma_transforms_compat/tests/optional-chaining/issue-7561/output.js
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
class Foo { | ||
#x; | ||
test() { | ||
this === null || this === void 0 ? void 0 : this.y.#x; | ||
} | ||
} |
7ba7b6e
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Benchmark
es/full/bugs-1
292613
ns/iter (± 9598
)288126
ns/iter (± 7369
)1.02
es/full/minify/libraries/antd
1300970785
ns/iter (± 10885766
)1331311908
ns/iter (± 25989677
)0.98
es/full/minify/libraries/d3
278938859
ns/iter (± 3232583
)281959320
ns/iter (± 5183671
)0.99
es/full/minify/libraries/echarts
1062319957
ns/iter (± 5585420
)1090060535
ns/iter (± 9008808
)0.97
es/full/minify/libraries/jquery
84274554
ns/iter (± 166924
)85045341
ns/iter (± 200947
)0.99
es/full/minify/libraries/lodash
98100362
ns/iter (± 349352
)98396843
ns/iter (± 680771
)1.00
es/full/minify/libraries/moment
49631568
ns/iter (± 199292
)49510157
ns/iter (± 233972
)1.00
es/full/minify/libraries/react
17918933
ns/iter (± 33046
)17963478
ns/iter (± 99869
)1.00
es/full/minify/libraries/terser
220362223
ns/iter (± 924512
)219291746
ns/iter (± 1141463
)1.00
es/full/minify/libraries/three
383423154
ns/iter (± 1423791
)392335249
ns/iter (± 4392139
)0.98
es/full/minify/libraries/typescript
2657663795
ns/iter (± 8921129
)2678456645
ns/iter (± 23849411
)0.99
es/full/minify/libraries/victory
568475799
ns/iter (± 3692065
)556786690
ns/iter (± 4144755
)1.02
es/full/minify/libraries/vue
120116784
ns/iter (± 247052
)120116640
ns/iter (± 474001
)1.00
es/full/codegen/es3
34428
ns/iter (± 80
)35114
ns/iter (± 81
)0.98
es/full/codegen/es5
34489
ns/iter (± 135
)34975
ns/iter (± 62
)0.99
es/full/codegen/es2015
34454
ns/iter (± 82
)34932
ns/iter (± 107
)0.99
es/full/codegen/es2016
34452
ns/iter (± 87
)35006
ns/iter (± 85
)0.98
es/full/codegen/es2017
34464
ns/iter (± 77
)34842
ns/iter (± 92
)0.99
es/full/codegen/es2018
34480
ns/iter (± 84
)34925
ns/iter (± 122
)0.99
es/full/codegen/es2019
34509
ns/iter (± 99
)34945
ns/iter (± 77
)0.99
es/full/codegen/es2020
34524
ns/iter (± 79
)34866
ns/iter (± 97
)0.99
es/full/all/es3
174104513
ns/iter (± 835650
)173987823
ns/iter (± 711433
)1.00
es/full/all/es5
164630441
ns/iter (± 1609662
)166206174
ns/iter (± 729470
)0.99
es/full/all/es2015
124699369
ns/iter (± 904112
)123800359
ns/iter (± 563337
)1.01
es/full/all/es2016
123155353
ns/iter (± 381471
)123666557
ns/iter (± 1142741
)1.00
es/full/all/es2017
122801784
ns/iter (± 1719036
)122822377
ns/iter (± 961373
)1.00
es/full/all/es2018
120767613
ns/iter (± 561454
)120275809
ns/iter (± 618639
)1.00
es/full/all/es2019
120283544
ns/iter (± 786964
)120234905
ns/iter (± 2247746
)1.00
es/full/all/es2020
115831872
ns/iter (± 407535
)115415297
ns/iter (± 697124
)1.00
es/full/parser
529611
ns/iter (± 5239
)525666
ns/iter (± 6178
)1.01
es/full/base/fixer
17998
ns/iter (± 249
)19716
ns/iter (± 133
)0.91
es/full/base/resolver_and_hygiene
83186
ns/iter (± 118
)84972
ns/iter (± 167
)0.98
serialization of serde
298
ns/iter (± 0
)297
ns/iter (± 2
)1.00
css/minify/libraries/bootstrap
28909367
ns/iter (± 53277
)29381964
ns/iter (± 83086
)0.98
css/visitor/compare/clone
1632123
ns/iter (± 8182
)1635052
ns/iter (± 7194
)1.00
css/visitor/compare/visit_mut_span
1770668
ns/iter (± 4589
)1763429
ns/iter (± 4810
)1.00
css/visitor/compare/visit_mut_span_panic
1831081
ns/iter (± 4005
)1840397
ns/iter (± 5012
)0.99
css/visitor/compare/fold_span
2561220
ns/iter (± 14094
)2559334
ns/iter (± 12968
)1.00
css/visitor/compare/fold_span_panic
2763839
ns/iter (± 17572
)2755912
ns/iter (± 20586
)1.00
css/lexer/bootstrap_5_1_3
4462435
ns/iter (± 3064
)4447586
ns/iter (± 7480
)1.00
css/lexer/foundation_6_7_4
3754639
ns/iter (± 3275
)3752394
ns/iter (± 3320
)1.00
css/lexer/tailwind_3_1_1
715398
ns/iter (± 1303
)712017
ns/iter (± 837
)1.00
css/parser/bootstrap_5_1_3
20104286
ns/iter (± 89068
)20193719
ns/iter (± 132837
)1.00
css/parser/foundation_6_7_4
16081542
ns/iter (± 45943
)16148443
ns/iter (± 22982
)1.00
css/parser/tailwind_3_1_1
3107646
ns/iter (± 4425
)3056699
ns/iter (± 7074
)1.02
es/codegen/colors
734643
ns/iter (± 401977
)735568
ns/iter (± 402114
)1.00
es/codegen/large
3134420
ns/iter (± 1682394
)3142620
ns/iter (± 1678067
)1.00
es/codegen/with-parser/colors
45036
ns/iter (± 465
)43649
ns/iter (± 471
)1.03
es/codegen/with-parser/large
483091
ns/iter (± 726
)480876
ns/iter (± 719
)1.00
es/minify/libraries/antd
1138085686
ns/iter (± 16542090
)1121835170
ns/iter (± 9327105
)1.01
es/minify/libraries/d3
241913269
ns/iter (± 3309026
)239345307
ns/iter (± 2247513
)1.01
es/minify/libraries/echarts
907587296
ns/iter (± 5670936
)895782126
ns/iter (± 3944785
)1.01
es/minify/libraries/jquery
74357527
ns/iter (± 149135
)73404735
ns/iter (± 133346
)1.01
es/minify/libraries/lodash
88941073
ns/iter (± 172555
)88261895
ns/iter (± 831666
)1.01
es/minify/libraries/moment
43817384
ns/iter (± 57538
)43474106
ns/iter (± 91032
)1.01
es/minify/libraries/react
16176232
ns/iter (± 29087
)16040529
ns/iter (± 91813
)1.01
es/minify/libraries/terser
188149099
ns/iter (± 321922
)185874162
ns/iter (± 758847
)1.01
es/minify/libraries/three
323129330
ns/iter (± 671538
)319249540
ns/iter (± 1653147
)1.01
es/minify/libraries/typescript
2282172089
ns/iter (± 8093874
)2254891319
ns/iter (± 20285605
)1.01
es/minify/libraries/victory
472456794
ns/iter (± 2202431
)465245455
ns/iter (± 1801333
)1.02
es/minify/libraries/vue
108088286
ns/iter (± 291029
)106632562
ns/iter (± 137025
)1.01
es/visitor/compare/clone
1928984
ns/iter (± 3274
)1961030
ns/iter (± 4404
)0.98
es/visitor/compare/visit_mut_span
2270956
ns/iter (± 7797
)2311761
ns/iter (± 5444
)0.98
es/visitor/compare/visit_mut_span_panic
2317299
ns/iter (± 3812
)2346410
ns/iter (± 5202
)0.99
es/visitor/compare/fold_span
3313534
ns/iter (± 4216
)3363434
ns/iter (± 6442
)0.99
es/visitor/compare/fold_span_panic
3477057
ns/iter (± 3457
)3491073
ns/iter (± 28720
)1.00
es/lexer/colors
12546
ns/iter (± 13
)12634
ns/iter (± 39
)0.99
es/lexer/angular
6180161
ns/iter (± 7938
)6174529
ns/iter (± 5275
)1.00
es/lexer/backbone
800903
ns/iter (± 7709
)808771
ns/iter (± 2506
)0.99
es/lexer/jquery
4489655
ns/iter (± 5784
)4513445
ns/iter (± 1119
)0.99
es/lexer/jquery mobile
6946337
ns/iter (± 30668
)6942246
ns/iter (± 3863
)1.00
es/lexer/mootools
3569666
ns/iter (± 12949
)3593660
ns/iter (± 8363
)0.99
es/lexer/underscore
674907
ns/iter (± 1014
)673202
ns/iter (± 951
)1.00
es/lexer/three
21248544
ns/iter (± 44746
)21236998
ns/iter (± 27080
)1.00
es/lexer/yui
3850698
ns/iter (± 5118
)3902840
ns/iter (± 2964
)0.99
es/parser/colors
26273
ns/iter (± 53
)26487
ns/iter (± 92
)0.99
es/parser/angular
13411388
ns/iter (± 40783
)13223671
ns/iter (± 69924
)1.01
es/parser/backbone
1994840
ns/iter (± 18508
)1966022
ns/iter (± 9783
)1.01
es/parser/jquery
10742773
ns/iter (± 34447
)10658625
ns/iter (± 55502
)1.01
es/parser/jquery mobile
16567063
ns/iter (± 35543
)16295363
ns/iter (± 51250
)1.02
es/parser/mootools
8294620
ns/iter (± 16078
)8217752
ns/iter (± 17334
)1.01
es/parser/underscore
1708116
ns/iter (± 9213
)1692274
ns/iter (± 10071
)1.01
es/parser/three
45986206
ns/iter (± 175509
)46075807
ns/iter (± 417081
)1.00
es/parser/yui
8203693
ns/iter (± 30971
)8105646
ns/iter (± 25869
)1.01
es/preset-env/usage/builtin_type
134705
ns/iter (± 32207
)133955
ns/iter (± 30893
)1.01
es/preset-env/usage/property
16316
ns/iter (± 47
)16629
ns/iter (± 119
)0.98
es/resolver/typescript
88854912
ns/iter (± 1223927
)88141443
ns/iter (± 1578360
)1.01
es/fixer/typescript
63851246
ns/iter (± 269961
)63497731
ns/iter (± 790017
)1.01
es/hygiene/typescript
132918356
ns/iter (± 743705
)130692640
ns/iter (± 525776
)1.02
es/resolver_with_hygiene/typescript
243198368
ns/iter (± 761162
)241417072
ns/iter (± 1209933
)1.01
es/visitor/base-perf/module_clone
60913
ns/iter (± 420
)60891
ns/iter (± 216
)1.00
es/visitor/base-perf/fold_empty
64057
ns/iter (± 608
)66153
ns/iter (± 171
)0.97
es/visitor/base-perf/fold_noop_impl_all
64264
ns/iter (± 636
)66625
ns/iter (± 470
)0.96
es/visitor/base-perf/fold_noop_impl_vec
65396
ns/iter (± 573
)67257
ns/iter (± 2045
)0.97
es/visitor/base-perf/boxing_boxed_clone
57
ns/iter (± 0
)57
ns/iter (± 0
)1
es/visitor/base-perf/boxing_unboxed_clone
40
ns/iter (± 0
)39
ns/iter (± 0
)1.03
es/visitor/base-perf/boxing_boxed
109
ns/iter (± 0
)116
ns/iter (± 0
)0.94
es/visitor/base-perf/boxing_unboxed
77
ns/iter (± 0
)77
ns/iter (± 0
)1
es/visitor/base-perf/visit_empty
0
ns/iter (± 0
)0
ns/iter (± 0
)NaN
es/visitor/base-perf/visit_contains_this
2539
ns/iter (± 12
)2511
ns/iter (± 9
)1.01
es/base/parallel/resolver/typescript
4384674556
ns/iter (± 295005176
)4467485394
ns/iter (± 262302335
)0.98
es/base/parallel/hygiene/typescript
1474789056
ns/iter (± 20767135
)1454762581
ns/iter (± 16822850
)1.01
misc/visitors/time-complexity/time 5
136
ns/iter (± 1
)136
ns/iter (± 6
)1
misc/visitors/time-complexity/time 10
385
ns/iter (± 2
)380
ns/iter (± 3
)1.01
misc/visitors/time-complexity/time 15
676
ns/iter (± 4
)525
ns/iter (± 2
)1.29
misc/visitors/time-complexity/time 20
1061
ns/iter (± 6
)1061
ns/iter (± 15
)1
misc/visitors/time-complexity/time 40
3578
ns/iter (± 27
)3543
ns/iter (± 6
)1.01
misc/visitors/time-complexity/time 60
7337
ns/iter (± 24
)7467
ns/iter (± 53
)0.98
es/full-target/es2016
235681
ns/iter (± 1163
)238296
ns/iter (± 1344
)0.99
es/full-target/es2017
224478
ns/iter (± 533
)225322
ns/iter (± 991
)1.00
es/full-target/es2018
212600
ns/iter (± 787
)212996
ns/iter (± 1350
)1.00
es2020_nullish_coalescing
68723
ns/iter (± 440
)71613
ns/iter (± 384
)0.96
es2020_optional_chaining
79314
ns/iter (± 257
)81616
ns/iter (± 315
)0.97
es2022_class_properties
118367
ns/iter (± 303
)118237
ns/iter (± 337
)1.00
es2018_object_rest_spread
73189
ns/iter (± 308
)75493
ns/iter (± 2184
)0.97
es2019_optional_catch_binding
61952
ns/iter (± 209
)65242
ns/iter (± 217
)0.95
es2017_async_to_generator
61887
ns/iter (± 226
)64321
ns/iter (± 422
)0.96
es2016_exponentiation
67051
ns/iter (± 221
)68993
ns/iter (± 213
)0.97
es2015_arrow
70026
ns/iter (± 196
)72003
ns/iter (± 225
)0.97
es2015_block_scoped_fn
66764
ns/iter (± 267
)68669
ns/iter (± 117
)0.97
es2015_block_scoping
122251
ns/iter (± 721
)120221
ns/iter (± 1381
)1.02
This comment was automatically generated by workflow using github-action-benchmark.