mirror of
https://github.com/github/codeql.git
synced 2026-05-01 11:45:14 +02:00
JavaScript: Restrict InstanceFieldAsPropWrite to fields with initializers.
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
| fieldInit.ts:10:3:10:8 | f = 4; | This write to property 'f' is useless, since $@ always overrides it. | fieldInit.ts:13:5:13:14 | this.f = 5 | another property write |
|
||||
| real-world-examples.js:5:4:5:11 | o.p = 42 | This write to property 'p' is useless, since $@ always overrides it. | real-world-examples.js:10:2:10:9 | o.p = 42 | another property write |
|
||||
| real-world-examples.js:15:9:15:18 | o.p1 += 42 | This write to property 'p1' is useless, since $@ always overrides it. | real-world-examples.js:15:2:15:18 | o.p1 = o.p1 += 42 | another property write |
|
||||
| real-world-examples.js:16:11:16:20 | o.p2 *= 42 | This write to property 'p2' is useless, since $@ always overrides it. | real-world-examples.js:16:2:16:21 | o.p2 -= (o.p2 *= 42) | another property write |
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
class C {
|
||||
f; // OK
|
||||
|
||||
constructor() {
|
||||
this.f = 5;
|
||||
}
|
||||
}
|
||||
|
||||
class D {
|
||||
f = 4; // NOT OK
|
||||
|
||||
constructor() {
|
||||
this.f = 5;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user