QuickLib
QuickLib copied to clipboard
Quick.Logger.Intf.pas generates 11 E2266 build errors on the overload
When compiling with delphi 12.1 I get the following error:
[dcc64 Error] Quick.Logger.Intf.pas(71): E2266 Only one of a set of overloaded methods can be published
Adding public seems to fix it.
TNullLogger = class(TInterfacedObject,ILogger)
public
procedure Info(const aMsg : string); overload;
procedure Info(const aMsg : string; aParams : array of const); overload;
procedure Succ(const aMsg : string); overload;
procedure Succ(const aMsg : string; aParams : array of const); overload;
procedure Done(const aMsg : string); overload;
procedure Done(const aMsg : string; aParams : array of const); overload;
procedure Warn(const aMsg : string); overload;
procedure Warn(const aMsg : string; aParams : array of const); overload;
procedure Error(const aMsg : string); overload;
procedure Error(const aMsg : string; aParams : array of const); overload;
procedure Critical(const aMsg : string); overload;
procedure Critical(const aMsg : string; aParams : array of const); overload;
procedure Trace(const aMsg : string); overload;
procedure Trace(const aMsg : string; aParams : array of const); overload;
procedure Debug(const aMsg : string); overload;
procedure Debug(const aMsg : string; aParams : array of const); overload;
procedure &Except(const aMsg : string; aValues : array of const); overload;
procedure &Except(const aMsg, aException, aStackTrace : string); overload;
procedure &Except(const aMsg : string; aValues: array of const; const aException, aStackTrace: string); overload;
procedure &Except(MsgObject : TObject); overload;
end;
Same here with Delphi 11.1 but only for Windows 64 bit as platform. Compiling the same application for Windows 32 bit is OK.
The strange thing is, the Multilogger Delphi sample is working OK for 32 and 64 bit. No errors.
I don't understand. TNullLogger properties are public, not published. Which QuickLogger and QuickLib version are you using?