-
Notifications
You must be signed in to change notification settings - Fork 11
ujachLogMgr
This unit contains the logger class: TjachLog
and you better include this unit in the uses
clause of any unit where you invoke any of the Log methods.
This is needed for the compiler to correctly expand the inlined routines.
This unit declares various of its routines as inline
to avoid the call cost that usually occurs between the different flavors of each one (this allows to keep the implementation of the class simple and consistent).
If you don't include the unit, the compilation process will generate Hints like the following ones:
[dcc32 Hint] Unit3.pas(34): H2443 Inline function 'TjachLog.LogInfo' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
[dcc32 Hint] Unit3.pas(35): H2443 Inline function 'TjachLog.LogDebug' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
[dcc32 Hint] Unit3.pas(36): H2443 Inline function 'TjachLog.LogInfo' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
[dcc32 Hint] Unit3.pas(40): H2443 Inline function 'TjachLog.LogNotice' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
[dcc32 Hint] Unit3.pas(41): H2443 Inline function 'TjachLog.LogWarning' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
[dcc32 Hint] Unit3.pas(42): H2443 Inline function 'TjachLog.LogError' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
[dcc32 Hint] Unit3.pas(43): H2443 Inline function 'TjachLog.LogCritical' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
[dcc32 Hint] Unit3.pas(45): H2443 Inline function 'TjachLog.LogAlert' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
[dcc32 Hint] Unit3.pas(47): H2443 Inline function 'TjachLog.LogEmergency' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
[dcc32 Hint] Unit3.pas(49): H2443 Inline function 'TjachLog.LogInfo' has not been expanded because unit 'ujachLogMgr' is not specified in USES list
In that case, the program will work as expected, but a log method routine may call other log method to perform its work.
If you're like me and want a clean compilation, just add a uses ujachLogMgr
to the offending unit.
jump to: get started — multiple log destinations — units and classes — wiki home — blog (English) — blog (Spanish) — library home