Further more
program Project1;
uses fgl;
type TFoo = specialize TFPGList<integer>;
var f: TFoo;
begin
f := TFoo.Create;
f.Add(1);
You can watch (for any index you want)
However, the address of function "get" is not always in the debug info.
The function must at least be used in the project, or it wont be compiled into the exe.
If the function is virtual, then it will likely work well. Otherwise it may depend on the target OS. Though Lazarus 4.0 has gotten better at getting the address.
You have to enable function calling for watches. Global options, and in watch properties