Patch #750595: Refer to type complex using builtin. Fixes #595837.
Backported to 2.2.
diff --git a/Lib/copy_reg.py b/Lib/copy_reg.py
index 2ebafc7..0477bcb 100644
--- a/Lib/copy_reg.py
+++ b/Lib/copy_reg.py
@@ -28,10 +28,16 @@
 
 # Example: provide pickling support for complex numbers.
 
-def pickle_complex(c):
-    return complex, (c.real, c.imag)
+try:
+    complex
+except NameError:
+    pass
+else:
 
-pickle(type(1j), pickle_complex, complex)
+    def pickle_complex(c):
+        return complex, (c.real, c.imag)
+
+    pickle(complex, pickle_complex, complex)
 
 # Support for pickling new-style objects