ActiveX - incorrect definition of IEnumVARIANT.Next method

If we look at example code from documentation of IEnumVariant.Next interface method (https://learn.microsoft.com/en-us/windows/win32/api/oaidl/nf-oaidl-ienumvariant-next), can be concluded (because documentation does not explicitly mention it) that parameter rgVar is a simple array with elements of type VARIANT, which is provided by caller and parameter pCeltFetched is a pointer that can take the nil.

So the Next method declaration should look like:

Function Next(celt: ULONG; rgVar: POLEVARIANT; pCeltFetched: PULONG):HResult;StdCall;

instead of currently

Function Next(celt: ULONG; OUT rgVar: OLEVARIANT; out pCeltFetched: ULONG):HResult;StdCall;

(https://gitlab.com/freepascal.org/fpc/source/-/blob/main/packages/winunits-base/src/activex.pp?ref_type=heads#L3307)