On 2013-09-05 17:52, Andy Lipscomb wrote:
"I guess such =zone references should refer to a zone earlier in the same file to keep things simple, i.e. no forward or external references."
Not an absolute logical necessity, but certainly a safe way to do things. It does have implications in the design of the extended files, in that they would need to be supersets of the basic files, not supplemental files used in conjunction with them. In the alternative, a limited form of import could be allowed in that a file named (for exampile) "kalimdor-extended" would be allowed to reference the zones of the file "kalimdor" as well as the ones it contains itself.
I suppose there's no harm in allowing external references as long as those are parsed first, treating the concatenation of the files (or a subset of the files, e.g. excluding the "extended" zones) as "one big file". This means you could only run zic on a self-consistent list of files ordered to not have no forward references. Another possibility would be to have an "Include" directive containing a relative pathname (relative to the file containing the "Include" directive) to another file. Then "kalimdor-extended" could contain the line: Include kalimdor to include the non-extended zones before it defines the extended zones. Then zic could be run on either kalimdor or kalimdor-extended, but not both, since the latter includes the former automatically. -- -=( Ian Abbott @ MEV Ltd. E-mail: <abbotti@mev.co.uk> )=- -=( Tel: +44 (0)161 477 1898 FAX: +44 (0)161 718 3587 )=-