begin

  routine do5(string (5) array (2) name S)
    string (10) x
    x = S(2,12)
    print string(x)

    ! This is failing at compile time:
    !print string(S(2,12))

  end
  
  routine do(string (*) array (2) name S)
    string (10) x
    ! and I expect this to fail at runtime, until I implement dopevectors
    x = S(2,12)
    print string(x)
  end
  
  string (5) array mnems(1:2, 10:13)

  mnems(1,10) = "fiver"
  mnems(1,11) = "fours"
  mnems(1,12) = "three"
  mnems(1,13) = "none!"
  
  mnems(2,10) = "FIVER"
  mnems(2,11) = "FOURS"
  mnems(2,12) = "THREE"
  mnems(2,13) = "NONE!"
  
  do5(mnems)
  do(mnems)
  
endofprogram