Следующая программа работает без проблем.
array[1..2] of var set of 5..8: ar = [{5, 6}, {6, 7}];
function string: format_set_1( var set of int: s ) = "\(fix(s))\t";
function string: format_set_2( var set of int: s ) = "\(fix(s))\t";
output
[format_set_1(ar[1]) ++ format_set_2(ar[2])];
Но когда я заменяю format_set_2
на format_set_1
(или наоборот) в выходном массиве, я получаю следующее сообщение об ошибке.
MiniZinc: type error:
function with the same type already defined in C:/Users/rabbott/AppData/Local/Temp/MiniZinc IDE (bundled)-SEkuWd/untitled_model.mzn:4.1
Что происходит?