un-tagged diags, every diag should end with \n.
poolamc.c: fix spelling of amcScanNailed_loop diag.
Copied from Perforce
Change: 163125
ServerID: perforce.ravenbrook.com
20000 chars (10 screenfuls) in diag varieties, 1 char in others.
Handle diag->buf overflow (in fact was already handled; now tested;
in the always-on safety tests, use a condition that is verbatim
the same as the corresponding AVER).
Diag type: DiagSig, and AVERT(Diag, diag). Neater .rules.debug.
Copied from Perforce
Change: 163114
ServerID: perforce.ravenbrook.com
(tidyup) Move RulesGlobal to head of file; write instructions.
(tidyup) Move StringEqual into mpm.c (with StringLength); add AVER.
(cosmetic) Correct case of names: module-interface names begin
uppercase; local names begin lowercase. Tags should be C identifiers.
Copied from Perforce
Change: 163112
ServerID: perforce.ravenbrook.com
-DIAGTEST/*/*
will filter out all diags whose tags contain "DIAGTEST".
Unit test for PatternOccurs. (PatternOccurs used to be called
StringMatch).
Copied from Perforce
Change: 163111
ServerID: perforce.ravenbrook.com
the whole of a given diag, so memoize it (instead of repeating the
match for every line of the diag).
locus.c: new diag from ChainCondemnAuto.
trace.c: tidy up TraceStart diag, give traceFindGrey diag a tag.
Copied from Perforce
Change: 163077
ServerID: perforce.ravenbrook.com
diagnostic based on something on one of its lines. See RulesGlobalX
for an example. Implementation currently inefficient (scans whole
buffer for each line).
Copied from Perforce
Change: 163073
ServerID: perforce.ravenbrook.com
report helpfully if poor programmer forgot to end a tag.
FilterOutput: really filters now, but only on Tag.
Copied from Perforce
Change: 163070
ServerID: perforce.ravenbrook.com
and mps_lib_EOF.
diag.c:
Diag is a buffer capable of holding a diagnostic.
FilterStream can buffer and filter diagnostics.
Rule is a selection rule for filtering diagnostics.
FilterOutput does output (but does not apply the rules yet).
DiagStream can be switched to either FilterStream() or mps_lib_stdout().
Copied from Perforce
Change: 163067
ServerID: perforce.ravenbrook.com
diag.c: support tagging of diagnostics, and avoid having to
say DIAG_STREAM every time, with new macros:
DIAG_SINGLEF, DIAG_FIRSTF, DIAG_MOREF, DIAG_END.
mpm.c: new WriteF_firstformat_v required by DIAG_MOREF.
Copied from Perforce
Change: 163059
ServerID: perforce.ravenbrook.com
always present in the source, even for builds (eg. non-diag
varieties) in which it is not invoked. (avoids ranlib warning on
xcppgc).
Copied from Perforce
Change: 162948
ServerID: perforce.ravenbrook.com
Hope to fix in time, but for now I need DIAG-out to work, so switch
to printf (yes, really, I know, sorry).
Also, only do DIAG-out in variety.di, to avoid damage to .ci.
So for now, remove DIAG_WRITEF and DIAG from arenavm and trace.
To test, add DIAG_PRINTF in trace.
Copied from Perforce
Change: 162387
ServerID: perforce.ravenbrook.com
mpm.h: DIAG() et al under control of DIAGNOSTICS;
diag.c: under control of DIAGNOSTICS, plus add header and copyright.
Copied from Perforce
Change: 162214
ServerID: perforce.ravenbrook.com