Next: , Previous: , Up: Info Format General Layout   [Contents][Index]


Info Format Indirect Table

Info Format: Indirect Table

    <indirect table> =
<separator>
Indirect:
(<filename>: <bytepos>)*

The indirect table is written to the main file in the case of split output only. It specifies, as a decimal integer, the starting byte position (zero-based) that the first node of each subfile would have if the subfiles were concatenated together in order, not including the top-level file. The first node of actual content is pointed to by the first entry.

As an example, suppose split output is generated for the GDB manual. The top-level file gdb.info will contain something like this:

<separator>
Indirect:
gdb.info-1: 1878
gdb.info-2: 295733
...

This tells Info viewers that the first node of the manual occurs at byte 1878 of the file gdb.info-1 (which would be after that file’s preamble.) The first node in the gdb.info-2 subfile would start at byte 295733 if gdb.info-2 were appended to gdb.info-1, including any preamble sections in both files.

Unfortunately, Info-creating programs such as makeinfo have not always implemented these rules perfectly, due to various bugs and oversights. Therefore, robust Info viewers should fall back to searching “nearby” the given position for a node, instead of giving up immediately if the position is not exactly at a node beginning.