E2182 '%s' clause not allowed in OLE automation section (Delphi)
Go Up to Error and Warning Messages (Delphi) Index
INDEX, STORED, DEFAULT and NODEFAULT are not allowed in OLE automation sections.
program Produce;
type
Base = class
v : integer;
procedure setV(x : integer);
function getV : integer;
automated
property Value : integer read getV write setV nodefault;
end;
procedure Base.setV(x : integer);
begin v := x;
end;
function Base.getV : integer;
begin getV := v;
end;
begin
end.
Including a NODEFAULT clause on an automated property is not allowed.
program Solve;
type
Base = class
v : integer;
procedure setV(x : integer);
function getV : integer;
automated
property Value : integer read getV write setV;
end;
procedure Base.setV(x : integer);
begin v := x;
end;
function Base.getV : integer;
begin getV := v;
end;
begin
end.
Removing the offending clause will cause the error to go away. Alternatively, moving the property out of the automated section will also make the error go away.