{ %FAIL }
{ %OPT=-Sew -vw }

{$MODE OBJFPC}

{ This tests that non-implemented abstract methods which are
  overloaded (but not in all cases) will still give out a
  warning
 }
type
  tmyclass = class
   procedure myabstract(x: integer); virtual; abstract;
   procedure myabstract(z: byte); virtual; abstract;
  end;

  tmyclass2 = class(tmyclass)
   procedure myabstract(x: integer) ; override;
  end;


  procedure tmyclass2.myabstract(x: integer);
   begin
   end;


var
 cla : tmyclass2;
Begin
 cla := tmyclass2.create;
end.
