   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;
+  RTCRayHitN* uniform ray_in = args->rayhit;
   uniform unsigned int N_in = args->N;
   uniform unsigned int primID_in = args->primID;
 }@@

  void* uniform geomUserPtr_in = args->geomUserPtr;
  COMMENT uniform RTCIntersectContext* uniform context = args->context;
  COMMENT varying RTCRay& ray_in = *(varying RTCRay* uniform ) args->ray;
  varying RTCHit* uniform potentialHit = (varying RTCHit* uniform ) args->potentialHit;
  #warning FIXME: use potentialHit to access hit
  #warning FIXME: reject hit through *vvalid = 0 instead of ray_in.geomID = RTC_INVALID_GEOMETRY_ID;
  uniform unsigned int N = args->N;
  assert(N == __programCount);

  void* geomUserPtr_in = args->geomUserPtr;
  COMMENT RTCIntersectContext* context = args->context;
  COMMENT RTCRay4& ray_in = *(RTCRay4*) args->ray;
  RTCHit4* hit = (RTCHit4*) args->hit;
  #warning FIXME: use hit to access hit
  #warning FIXME: reject hit through *valid_in = 0 instead of ray_in.geomID = RTC_INVALID_GEOMETRY_ID;
  unsigned int N = args->N;
  assert(N == 4);
