Fixed a translation error caused by looping over empty recursive loops.

--HG--
branch : trunk
diff --git a/jinja2/compiler.py b/jinja2/compiler.py
index 5074a34..54a80ba 100644
--- a/jinja2/compiler.py
+++ b/jinja2/compiler.py
@@ -656,7 +656,7 @@
         """Return a human readable position for the node."""
         rv = 'line %d' % node.lineno
         if self.name is not None:
-            rv += ' in' + repr(self.name)
+            rv += ' in ' + repr(self.name)
         return rv
 
     # -- Statement Visitors
@@ -1012,7 +1012,8 @@
             self.outdent()
 
         # reset the aliases if there are any.
-        self.pop_scope(aliases, loop_frame)
+        if not node.recursive:
+            self.pop_scope(aliases, loop_frame)
 
         # if the node was recursive we have to return the buffer contents
         # and start the iteration code