then you have this.
Procedure Inc(Var A:Integer;B:Integer=1);
Begin
System.Inc(A, B);
end;
Yes, I had thought of that. But I would have re-implement every possible combination of parameter types to Inc, including strings, that the system Inc works with; not just a few integer types.
I think I've decided that the two parameter Inc will not be implemented in my library. They can easily just implement it themselves if they really need it.