leaks memory; rework it:
(deffld): New; semantic action for field headers.
(xufldname): Use it instead of storing a value for xucolumnheader().
(xucolumnheader): Remove, use xuflds() directly instead.
(setnum, setstr, setsym): New; semantic actions for field values.
(xufld): Use it instead of storing a value for xuloadrow().
(xuloadrow): Remove. Was incomplete.
(xufldname, xufld, xuflds): Remove parameter values. Callers
changed.
(cur_type, cur_obj, nxt_sel, nxt_idx, nxtfld, ca4fld, getsymtab): New
helpers.
(xundump): Initialize them.
(enum_value, value, freeflds, xunsymbol): Remove.
(mtsymset, add2symset): New.
(xufld): Use them to build a symbol set along the parse.
(xufldname, xufld, xuheader, xutrailer, xundump): Increment lineno
when and only when a linefeed is consumed, to make sure it is correct.
Move some semantic checks so that errors get reported for the correct
line.
(xundump): Use compare filenames as pointers, not strings, when
checking whether to reset lineno.
(xundump): Keep empfile[type] consistent during parse, to make
ef_ptr() usable.
(xundump): Don't call ep->init() on sentinels.
(xuinitrow): Unused, remove.
needed for xdump, because it doesn't occur as ca_table.
(lost_ca): Remove selector uid. Reasons as for realm_ca. The value
is incorrect in unused records, which is semantically tolerable, but
needlessly complicated to check in ef_verify.c.
(news_ca): Remove selector uid. Reasons as for realm_ca, plus the
value is incorrect, because nws_uid is not used.
Update the info page for the change to add civ, mil and uw.
(carg, cargo.t): Add the civ, mil and uw to cargo display.
Make the same as lcargo. Update the info page.
(enum_value, value, xuflds, freeflds): Parse additional syntax:
numeric and symbolic index.
(xucolumnheader): Use it to parse column header line. Check names
and indexes match meta-data. Symbolic indexes not yet implemented.
(xuloadrow): Reject the additional syntax.
for the call to ac_planedamage() use att_own instead.
'ap' may have been already freed in the previous call
to ac_planedamage(). This can create an invalid
news item and crash the server.
Chainsaw version (4.00 since Empire 2, ca. 1995) and Wolfpack version
(used to be the version number after the first dot).
(KSU_DIST, CHAINSAW_DIST, WOLFPACK_DIST): Unused, remove.
(version): New.
(EMP_VERS_MAJOR, EMP_VERS_MINOR, EMP_VERS_PATCH): Remove. Users
changed to use version[] instead. version[] is slightly easier to
initialize from configure.ac.
(check-version): No longer needed, remove.
(legal): New.
(vers, main): Show it.