@@ -305,6 +305,7 @@ def parse(
305305 if raise_on_error and errors .is_errors ():
306306 errors .raise_error ()
307307
308+ assert isinstance (tree , MypyFile )
308309 return tree
309310
310311
@@ -1632,7 +1633,9 @@ def visit_ExtSlice(self, n: ast3.ExtSlice) -> TupleExpr:
16321633 # Index(expr value)
16331634 def visit_Index (self , n : Index ) -> Node :
16341635 # cast for mypyc's benefit on Python 3.9
1635- return self .visit (cast (Any , n ).value )
1636+ value = self .visit (cast (Any , n ).value )
1637+ assert isinstance (value , Node )
1638+ return value
16361639
16371640 # Match(expr subject, match_case* cases) # python 3.10 and later
16381641 def visit_Match (self , n : Match ) -> MatchStmt :
@@ -1762,7 +1765,9 @@ def visit(self, node: AST | None) -> ProperType | None:
17621765 method = "visit_" + node .__class__ .__name__
17631766 visitor = getattr (self , method , None )
17641767 if visitor is not None :
1765- return visitor (node )
1768+ typ = visitor (node )
1769+ assert isinstance (typ , ProperType )
1770+ return typ
17661771 else :
17671772 return self .invalid_type (node )
17681773 finally :
@@ -1949,7 +1954,9 @@ def visit_Bytes(self, n: Bytes) -> Type:
19491954
19501955 def visit_Index (self , n : ast3 .Index ) -> Type :
19511956 # cast for mypyc's benefit on Python 3.9
1952- return self .visit (cast (Any , n ).value )
1957+ value = self .visit (cast (Any , n ).value )
1958+ assert isinstance (value , Type )
1959+ return value
19531960
19541961 def visit_Slice (self , n : ast3 .Slice ) -> Type :
19551962 return self .invalid_type (n , note = "did you mean to use ',' instead of ':' ?" )
0 commit comments