externalroutine whatever(integer x)
end

externalroutine xr1(routine fred(integer p2))
  real r1
end

! Should translate to:

! void xr1(void (*fred)(int p2)) {
!   float r1;
! }


externalintegermap xm1(routine fred(integer p2))
  owninteger oi1
  result == oi1
end

! Should translate to:

! int *xm1(void (*fred)(int p2)) {
!   static int oi1;
!   return &oi1;
! }
    
begin
  integer i           ; ! int I;
  integername zz      ; ! int *ZZ;
  zz == xm1(whatever)  ;! ZZ = XM1(&whatever);
  i = zz               ;! I = *ZZ;
end

endoffile