Pure declarations unit covering the entire public surface:
- TLogLevel (llTrace..llFatal)
- TLogProc = procedure(Level: TLogLevel; const Category, Msg: string) of object
- TLogProcPlain = plain-procedure variant
- NullLog / TNullLogSink fallbacks (never guard on nil in
consumer code)
- LogLevelName / LogLevelChar utilities
- Optional TConsoleLogger sink in log.console with min-level gate
Zero dependencies outside FPC RTL. Adopted in-tree by fpc-binkp,
fpc-comet, fpc-filexfer, and fpc-emsi; consumers supply one
method bound as TLogProc to wire logging across every fpc-* lib
from a single sink.
Build green across x86_64-linux + all 5 i386 targets (linux,
freebsd, win32, os2, go32v2). Tests in tests/test_log.pas.