Skip to content

Commit 3d3cc0e

Browse files
committed
Fix type annotations
1 parent e8d902e commit 3d3cc0e

File tree

4 files changed

+19
-12
lines changed

4 files changed

+19
-12
lines changed

Tools/cases_generator/generators_common.py

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -465,7 +465,7 @@ def _emit_stmt(
465465
uop: CodeSection,
466466
storage: Storage,
467467
inst: Instruction | None,
468-
) -> tuple[bool, Token, Storage]:
468+
) -> tuple[bool, Token | None, Storage]:
469469
if isinstance(stmt, SimpleStmt):
470470
return self._emit_simple(stmt, uop, storage, inst)
471471
elif isinstance(stmt, BlockStmt):
@@ -488,17 +488,16 @@ def _emit_simple(
488488
uop: CodeSection,
489489
storage: Storage,
490490
inst: Instruction | None,
491-
) -> tuple[bool, Token, Storage]:
491+
) -> tuple[bool, Token | None, Storage]:
492492
local_stores = set(uop.local_stores)
493493
reachable = True
494-
tkn_iter = TokenIterator(stmt.contents)
495-
tkn = tkn_iter.peek()
496494
try:
497495
if stmt in uop.properties.escaping_calls:
498496
escape = uop.properties.escaping_calls[stmt]
499497
if escape.kills is not None:
500498
self.stackref_kill(escape.kills, storage, True)
501499
self.emit_save(storage)
500+
tkn_iter = TokenIterator(stmt.contents)
502501
for tkn in tkn_iter:
503502
if tkn.kind == "GOTO":
504503
label_tkn = next(tkn_iter)
@@ -538,11 +537,11 @@ def _emit_simple(
538537

539538
def _emit_macro_if(
540539
self,
541-
stmt: IfStmt,
540+
stmt: MacroIfStmt,
542541
uop: CodeSection,
543542
storage: Storage,
544543
inst: Instruction | None,
545-
) -> tuple[bool, Token, Storage]:
544+
) -> tuple[bool, Token | None, Storage]:
546545
self.out.emit(stmt.condition)
547546
branch = stmt.else_ is not None
548547
reachable = True
@@ -554,7 +553,9 @@ def _emit_macro_if(
554553
reachable = False
555554
if branch:
556555
else_storage = storage.copy()
556+
assert stmt.else_ is not None
557557
self.out.emit(stmt.else_)
558+
assert stmt.else_body is not None
558559
for s in stmt.else_body:
559560
r, tkn, else_storage = self._emit_stmt(s, uop, else_storage, inst)
560561
if tkn is not None:
@@ -572,7 +573,7 @@ def _emit_if(
572573
uop: CodeSection,
573574
storage: Storage,
574575
inst: Instruction | None,
575-
) -> tuple[bool, Token, Storage]:
576+
) -> tuple[bool, Token | None, Storage]:
576577
self.out.emit(stmt.if_)
577578
for tkn in stmt.condition:
578579
self.out.emit(tkn)
@@ -604,6 +605,7 @@ def _emit_if(
604605
return reachable, rbrace, storage
605606
except StackError as ex:
606607
self._print_storage(if_storage)
608+
assert rbrace is not None
607609
raise analysis_error(ex.args[0], rbrace) from None
608610

609611
def _emit_block(
@@ -627,7 +629,9 @@ def _emit_block(
627629
break
628630
return reachable, stmt.close, storage
629631
except StackError as ex:
630-
raise analysis_error(ex.args[0], rbrace) from None
632+
if tkn is None:
633+
tkn = stmt.close
634+
raise analysis_error(ex.args[0], tkn) from None
631635

632636
def _emit_for(
633637
self,
@@ -665,6 +669,7 @@ def emit_tokens(
665669
) -> Storage:
666670
self.out.start_line()
667671
reachable, tkn, storage = self._emit_block(code.body, code, storage, inst, emit_braces)
672+
assert tkn is not None
668673
try:
669674
if reachable:
670675
self._print_storage(storage)

Tools/cases_generator/optimizer_generator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ def write_uop(
153153
out.start_line()
154154
stack.flush(out)
155155
except StackError as ex:
156-
raise analysis_error(ex.args[0], prototype.body[0]) # from None
156+
raise analysis_error(ex.args[0], prototype.body.open) # from None
157157

158158

159159
SKIPS = ("_EXTENDED_ARG",)

Tools/cases_generator/parsing.py

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -103,8 +103,10 @@ def print(self, out:CWriter) -> None:
103103
for tkn in self.condition:
104104
out.emit(tkn)
105105
self.body.print(out)
106-
if self.else_body is not None:
106+
if self.else_ is not None:
107107
out.emit(self.else_)
108+
self.body.print(out)
109+
if self.else_body is not None:
108110
self.else_body.print(out)
109111

110112
def accept(self, visitor: Visitor) -> None:
@@ -689,7 +691,7 @@ def if_stmt(self, if_: lx.Token) -> IfStmt:
689691
return IfStmt(if_, condition, body, else_, else_body)
690692

691693

692-
def macro_if(self, cond: lx.Token) -> IfStmt:
694+
def macro_if(self, cond: lx.Token) -> MacroIfStmt:
693695
else_ = None
694696
body: list[Stmt] = []
695697
else_body: list[Stmt] | None = None

Tools/cases_generator/tier2_generator.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,7 @@ def write_uop(uop: Uop, emitter: Emitter, stack: Stack) -> Stack:
157157
storage = emitter.emit_tokens(uop, storage, None, False)
158158
storage.flush(emitter.out)
159159
except StackError as ex:
160-
raise analysis_error(ex.args[0], uop.body[0]) from None
160+
raise analysis_error(ex.args[0], uop.body.open) from None
161161
return storage.stack
162162

163163
SKIPS = ("_EXTENDED_ARG",)

0 commit comments

Comments
 (0)