   const void* valid_in = args->valid;
   void* geomUserPtr_in = args->geomUserPtr;
   COMMENT RTCIntersectContext* context_in = args->context;
-  RTCRay16& ray_in = *(RTCRay16*) args->ray;
+  RTCRayHit16& ray_in = *(RTCRayHit16*) args->ray;
   unsigned int N_in = args->N;
   unsigned int primID_in = args->primID;
   assert(N_in == 16);

  const void* valid_in = args->valid;
  void* geomUserPtr_in = args->geomUserPtr;
  COMMENT RTCIntersectContext* context_in = args->context;
  RTCRay8& ray_in = *(RTCRay8*) args->ray;
  unsigned int N_in = args->N;
  unsigned int primID_in = args->primID;
  assert(N_in == 8);

  const int* uniform valid_in = args->valid;
  void* uniform geomUserPtr_in = args->geomUserPtr;
  RTCIntersectContext* uniform context_in = args->context;
  RTCRayHitN* uniform ray_in = args->ray;
  uniform unsigned int N_in = args->N;
  uniform unsigned int primID_in = args->primID;
}@@
