Out parameter check

variables with out parameters aren't checked. example bellow explains


procedure foo(const a: Integer; out b: Integer);
begin
  showmessage(b.ToString); //"uninitialized"
  b := somethingwith(a);
end;

var
  a,b: integeR;
begin
  a := 1;
  b := 1;  // not needed
  foo(a,b);
end;


This would indeed be a good new check. Delphi compiler should check the out parameter (like C# does) but because it does not do that FixInsight should have a check for that.