Просто в исходном Обероне обычно не выносился отдельный процедурный тип, а
описывался прямо по месту: RECORD Proc: PROCEDURE (a, b, c: INTEGER) END;
Такой вариант в XDS работает или нет? Если работает, то используйте его и не парьтесь - зачем ещё внешнее дообъявления процедурного типа?