I don't know about this
DelphiAST, but what about the other way around? Just parse as you always do. We now have a list of warnings and the line number it occurred on.
So in case the code goes like this
Delphi-Quellcode:
25: procedure TChild.someVirtualMethod();
26: begin
27: // No quack at all
28: end;
, there is a
W519 raised for
line 25. Now before outputting our results to the
IDE's listbox, let's check line 25 whether it contains a comment with an exclamation mark followed by "W519".
So if the code is like
Delphi-Quellcode:
25: procedure TChild.someVirtualMethod(); //!W519 because FixInsight is smart
26: begin
27: // No quack at all
28: end;
, there will be no "false positive".