Fixed a bug causing "NameError: global name 'code' is not defined".
diff --git a/jinja2/bccache.py b/jinja2/bccache.py
index 866568c..0b0ccad 100644
--- a/jinja2/bccache.py
+++ b/jinja2/bccache.py
@@ -98,7 +98,7 @@
             raise TypeError('can\'t write empty bucket')
         f.write(bc_magic)
         pickle.dump(self.checksum, f, 2)
-        marshal_dump(code, f)
+        marshal_dump(self.code, f)
 
     def bytecode_from_string(self, string):
         """Load bytecode from a string."""