code: def test_pass_pointers(self):
      dll = CDLL(_ctypes_test.__file__)
      func = dll._testfunc_p_p
      if sizeof(c_longlong) == sizeof(c_void_p):
          func.restype = c_longlong
      else:
          func.restype = c_long
  
      i = c_int(12345678)
      address = func(byref(i))
      self.assertEqual(c_int.from_address(address).value, 12345678)
  
      func.restype = POINTER(c_int)
      res = func(pointer(i))
      self.assertEqual(res.contents.value, 12345678)
      self.assertEqual(res[0], 12345678)
  
imports: import _ctypes_test
  import array
  import ctypes
  import sys
  import unittest
  from ctypes import CDLL, CFUNCTYPE, Structure, POINTER, pointer, _Pointer, _pointer_type_cache, byref, sizeof, c_void_p, c_char_p, c_byte, c_ubyte, c_short, c_ushort, c_int, c_uint, c_long, c_ulong, c_longlong, c_ulonglong, c_float, c_double
  from ._support import _CData, PyCPointerType, Py_TPFLAGS_DISALLOW_INSTANTIATION, Py_TPFLAGS_IMMUTABLETYPE
label_desc: Use image node_id 4 for calling the PointersTestCase obj's underlying member method code with example usage: obj.test_pass_pointers() without return types