generic type Item is private; type ItemVec is array(Integer range <>) of Item; with function ">" (X, Y : Item) return Boolean is <>; procedure QSort(Items: in out ItemVec; L,R: in Integer);