My standard way to get rid of this hint is to initialize the variable in the declaration:
procedure Test;
var
x : Array of integer = nil;
s: string = '';
ws: widestring = '';
begin
SetLength(x, ...);
SetLength(s, ...);
SetLength(ws, ...);
...
...
end;
These are very natural and self-explaining additions and much clearer than the standard {%H} directive.
Yes, this is self-explaining, and done at the root. Thumbs up !
But I today found some local vars that are records.
And I get this HINT ".. of a managed type does not seem to be initialized".
I have no idea how to solve this in a clean way ..