fixed include

--HG--
branch : trunk
diff --git a/jinja2/runtime.py b/jinja2/runtime.py
index fcd537d..1bc196e 100644
--- a/jinja2/runtime.py
+++ b/jinja2/runtime.py
@@ -96,10 +96,12 @@
     """Represents an included template."""
 
     def __init__(self, environment, context, template):
-        root = environment.get_template(template).root_render_func
-        gen = root(context, standalone=True)
-        self._context = gen.next().get_exported()
+        template = environment.get_template(template)
+        gen = template.root_render_func(context, standalone=True)
+        context = gen.next()
+        self._filename = template.name
         self._rendered_body = u''.join(gen)
+        self._context = context.get_exported()
 
     def __getitem__(self, name):
         return self._context[name]
@@ -107,6 +109,12 @@
     def __unicode__(self):
         return self._context
 
+    def __repr__(self):
+        return '<%s %r>' % (
+            self.__class__.__name__,
+            self._filename
+        )
+
 
 class LoopContextBase(object):
     """Helper for extended iteration."""
@@ -230,7 +238,8 @@
     def fail(self, *args, **kwargs):
         raise TypeError(self._undefined_hint)
     __getattr__ = __getitem__ = __add__ = __mul__ = __div__ = \
-    __realdiv__ = __floordiv__ = __mod__ = __pos__ = __neg__ = fail
+    __realdiv__ = __floordiv__ = __mod__ = __pos__ = __neg__ = \
+    __call__ = fail
     del fail
 
     def __unicode__(self):