modernc.org/ccgo/v3@v3.16.14/lib/testdata/gcc-9.1.0/gcc/testsuite/gcc.c-torture/compile/20040727-1.c (about)

     1  /* Extracted from boehm-gc/os_dep.c on Darwin.  It caused an ICE when
     2     trying to merge alias information from two pointers that had
     3     different type memory tags.  */
     4  typedef int thread_state_flavor_t;
     5  typedef int exception_behavior_t;
     6  typedef unsigned int exception_mask_t;
     7  typedef unsigned int exception_handler_t;
     8  typedef unsigned int mach_msg_type_number_t;
     9  static struct {
    10     mach_msg_type_number_t count;
    11     exception_mask_t masks[16];
    12     exception_handler_t ports[16];
    13     thread_state_flavor_t flavors[16];
    14  } GC_old_exc_ports;
    15  
    16  typedef exception_handler_t *exception_handler_array_t;
    17  typedef thread_state_flavor_t *exception_flavor_array_t;
    18  
    19  
    20  int task_get_exception_ports
    21  (
    22    mach_msg_type_number_t *masksCnt,
    23    exception_handler_array_t old_handlers,
    24    exception_flavor_array_t old_flavors
    25  );
    26  
    27  void GC_dirty_init()
    28  {
    29     task_get_exception_ports(GC_old_exc_ports.masks,
    30                             GC_old_exc_ports.ports,
    31                             GC_old_exc_ports.flavors);
    32  }