class A:
def __buffer__(self, flags):
return memoryview(bytes(8))
def __release_buffer__(self, view):
pass # do not need to do anything here, just needs to exist
b = bytearray(8)
m = memoryview(b) # now b.extend will raise an exception due to exports
b.extend(A())