diff --git a/Lib/copy_reg.py b/Lib/copy_reg.py
index f87c50f..0dd94cf 100644
--- a/Lib/copy_reg.py
+++ b/Lib/copy_reg.py
@@ -48,7 +48,8 @@
         obj = object.__new__(cls)
     else:
         obj = base.__new__(cls, state)
-        base.__init__(obj, state)
+        if base.__init__ != object.__init__:
+            base.__init__(obj, state)
     return obj
 
 _HEAPTYPE = 1<<9
diff --git a/Lib/test/test_array.py b/Lib/test/test_array.py
index 597f3b2..c10ad86 100755
--- a/Lib/test/test_array.py
+++ b/Lib/test/test_array.py
@@ -728,7 +728,6 @@
                 return array.array.__new__(cls, 'c', s)
 
             def __init__(self, s, color='blue'):
-                array.array.__init__(self, 'c', s)
                 self.color = color
 
             def strip(self):
diff --git a/Lib/test/test_descr.py b/Lib/test/test_descr.py
index 5abecf4..41c0bdf 100644
--- a/Lib/test/test_descr.py
+++ b/Lib/test/test_descr.py
@@ -2305,7 +2305,6 @@
         __slots__ = ['prec']
         def __init__(self, value=0.0, prec=12):
             self.prec = int(prec)
-            float.__init__(self, value)
         def __repr__(self):
             return "%.*g" % (self.prec, self)
     vereq(repr(precfloat(1.1)), "1.1")
