old_contents: try:
      # If we don't expose object.__new__ (small ports), there's
      # nothing to test.
      object.__new__
  except AttributeError:
      print("SKIP")
      raise SystemExit
  
  class A:
      def __new__(cls):
          print("A.__new__")
          return super(cls, A).__new__(cls)
  
      def __init__(self):
          print("A.__init__")
  
      def meth(self):
          print('A.meth')
  
  #print(A.__new__)
  #print(A.__init__)
  
  a = A()
  a.meth()
  
  a = A.__new__(A)
  a.meth()
  
  #print(a.meth)
  #print(a.__init__)
  #print(a.__new__)
  
  # __new__ should automatically be a staticmethod, so this should work
  a = a.__new__(A)
  a.meth()
  
  class B:
      def __new__(self, v1, v2):
          print("B.__new__", v1, v2)
  
      def __init__(self, v1, v2):
          # Should not be called in this test
          print("B.__init__", v1, v2)
  
  print("B inst:", B(1, 2))
  
new_contents: try:
      # If we don't expose object.__new__ (small ports), there's
      # nothing to test.
      object.__new__
  except AttributeError:
      print("SKIP")
      raise SystemExit
  
  class A:
      def __new__(cls):
          print("A.__new__")
          return super(cls, A).__new__(cls)
  
      def __init__(self):
          print("A.__init__")
  
      def meth(self):
          print('A.meth')
  
  #print(A.__new__)
  #print(A.__init__)
  
  a = A()
  a.meth()
  
  a = A.__new__(A)
  a.meth()
  
  #print(a.meth)
  #print(a.__init__)
  #print(a.__new__)
  
  # __new__ should automatically be a staticmethod, so this should work
  a = a.__new__(A)
  a.meth()
  
  # __new__ returns not an instance of the class (None here), __init__
  # should not be called
  
  class B:
      def __new__(self, v1, v2):
          print("B.__new__", v1, v2)
  
      def __init__(self, v1, v2):
          # Should not be called in this test
          print("B.__init__", v1, v2)
  
  print("B inst:", B(1, 2))
  
  
  # Variation of the above, __new__ returns an instance of another class,
  # __init__ should not be called
  
  class Dummy: pass
  
  class C:
      def __new__(cls):
          print("C.__new__")
          return Dummy()
  
      def __init__(self):
          # Should not be called in this test
          print("C.__init__")
  
  c = C()
  print(isinstance(c, Dummy))
  
subject: Add another testcase for __new__/__init__ interaction.