procedure p1; begin // Обязательно использовать T - шаблонный параметр p1 // С пользовательским типом вместо KeyValuePair не воспроизводится var a: KeyValuePair; // Обязательно сравнить на равенство assert(a = a); assert(not (a <> a)); var b: KeyValuePair; assert(b = b); assert(not (b <> b)); end; begin p1&; end.