Delphi Compiler Error
E2167 Abstract methods must be virtual or dynamic
Reason for the Error & Solution
When declaring an abstract method in a base class, it must either be of regular virtual or dynamic virtual type.
program Produce; type Base = class procedure DaliVision; abstract; procedure TellyVision; abstract; end; begin end.
The declaration above is in error because abstract methods must either be virtual or dynamic.
program Solve; type Base = class procedure DaliVision; virtual; abstract; procedure TellyVision; dynamic; abstract; end; begin end.
It is possible to remove this error by either specifying ‘virtual’ or ‘dynamic’, whichever is most appropriate for your application.