Skip to content

Commit d214cec

Browse files
authored
Merge pull request #4028 from asger-semmle/js/scope-manager-npe
Approved by max-schaefer
2 parents 7f8bf21 + 64f58b7 commit d214cec

File tree

5 files changed

+12
-1
lines changed

5 files changed

+12
-1
lines changed

javascript/extractor/src/com/semmle/js/extractor/ScopeManager.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -622,7 +622,9 @@ public Void visit(FunctionExpression nd, Void c) {
622622
nd.getReturnType().accept(this, c);
623623
}
624624
for (ITypeExpression paramType : nd.getParameterTypes()) {
625-
paramType.accept(this, c);
625+
if (paramType != null) {
626+
paramType.accept(this, c);
627+
}
626628
}
627629
// note: `infer` types may not occur in type parameter bounds.
628630
return null;
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
| tst.ts:1:1:1:61 | type Fo ... : never | tst.ts:1:15:1:61 | T exten ... : never |
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
import javascript
2+
3+
from TypeAliasDeclaration decl
4+
select decl, decl.getDefinition()
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"include": ["."]
3+
}
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
type Foo<T> = T extends (a, ...b: infer U) => any ? U : never

0 commit comments

Comments
 (0)