diff --git a/Lib/compiler/pycodegen.py b/Lib/compiler/pycodegen.py
index dc2be32..9f58067 100644
--- a/Lib/compiler/pycodegen.py
+++ b/Lib/compiler/pycodegen.py
@@ -326,7 +326,7 @@
         self.nextBlock(loop)
         self.loops.push(loop)
 
-        self.set_lineno(node)
+        self.set_lineno(node, force=1)
         self.visit(node.test)
         self.emit('JUMP_IF_FALSE', else_ or after)
 
@@ -338,9 +338,9 @@
         self.startBlock(else_) # or just the POPs if not else clause
         self.emit('POP_TOP')
         self.emit('POP_BLOCK')
+        self.loops.pop()
         if node.else_:
             self.visit(node.else_)
-        self.loops.pop()
         self.nextBlock(after)
 
     def visitFor(self, node):
@@ -354,7 +354,7 @@
         self.visit(node.list)
         self.visit(ast.Const(0))
         self.nextBlock(start)
-        self.set_lineno(node)
+        self.set_lineno(node, force=1)
         self.emit('FOR_LOOP', anchor)
         self.nextBlock()
         self.visit(node.assign)
@@ -362,9 +362,9 @@
         self.emit('JUMP_ABSOLUTE', start)
         self.startBlock(anchor)
         self.emit('POP_BLOCK')
+        self.loops.pop()
         if node.else_:
             self.visit(node.else_)
-        self.loops.pop()
         self.nextBlock(after)
 
     def visitBreak(self, node):
diff --git a/Tools/compiler/compiler/pycodegen.py b/Tools/compiler/compiler/pycodegen.py
index dc2be32..9f58067 100644
--- a/Tools/compiler/compiler/pycodegen.py
+++ b/Tools/compiler/compiler/pycodegen.py
@@ -326,7 +326,7 @@
         self.nextBlock(loop)
         self.loops.push(loop)
 
-        self.set_lineno(node)
+        self.set_lineno(node, force=1)
         self.visit(node.test)
         self.emit('JUMP_IF_FALSE', else_ or after)
 
@@ -338,9 +338,9 @@
         self.startBlock(else_) # or just the POPs if not else clause
         self.emit('POP_TOP')
         self.emit('POP_BLOCK')
+        self.loops.pop()
         if node.else_:
             self.visit(node.else_)
-        self.loops.pop()
         self.nextBlock(after)
 
     def visitFor(self, node):
@@ -354,7 +354,7 @@
         self.visit(node.list)
         self.visit(ast.Const(0))
         self.nextBlock(start)
-        self.set_lineno(node)
+        self.set_lineno(node, force=1)
         self.emit('FOR_LOOP', anchor)
         self.nextBlock()
         self.visit(node.assign)
@@ -362,9 +362,9 @@
         self.emit('JUMP_ABSOLUTE', start)
         self.startBlock(anchor)
         self.emit('POP_BLOCK')
+        self.loops.pop()
         if node.else_:
             self.visit(node.else_)
-        self.loops.pop()
         self.nextBlock(after)
 
     def visitBreak(self, node):
