| Type | Description | Form |
| M | Module Record | Compiler |
| F | Function Record | Compiler |
| S | Symbol Record | Compiler |
| T | Structure (Complex Type) Record | Compiler |
| L | Linker Record | Assembler / Linker |
| M | Module record type indicator |
| Filename | The filename of the module that this CDB file represents. |
| S | Symbol record type indicator |
| G | Scope is global |
| F Filename | Scope is file |
| L Function | Scope is local |
| Name | Symbol name |
| Level | Scope level (see below) |
| Block | Scope block (see below) |
| TypeChain | Type chain record (see type record below) |
| Address Space | Address space code (see table below) |
| On Stack | Is this symbol on the stack? Indicates if the next parameter is valid. |
| Stack | The stack Offsetorelative to the ``bp'' variable. (The libraries may have to be recompiled to include the --debug option for this variable to appear in the debug file). |
| Reg | If the address space is 'R', this field indicates the register that the symbol is allocated. The register name is in its native form: R1, AX, etc. |
| A | External stack |
| B | Internal stack |
| C | Code |
| D | Code / static segment |
| E | Internal ram (lower 128) bytes |
| F | External ram |
| G | Internal ram |
| H | Bit addressable |
| I | SFR space |
| J | SBIT space |
| R | Register space |
| Z | Used for function records, or any undefined space code |
| Size | The size of the item in decimal. |
| DCLType | The type encoded using the table below. |
| Sign | The sign of the item. Encoded as 'U' or 'S'. |
| DA n | Array of n elements |
| DF | Function |
| DG | Generic pointer |
| DC | Code pointer |
| DX | External ram pointer |
| DD | Internal ram pointer |
| DP | Paged pointer |
| DI | Upper 128 byte pointer |
| SL | long |
| SI | int |
| SC | char |
| SS | short |
| SV | void |
| SF | float |
| ST name | Structure of name name |
| SX | sbit |
| SB n | Bit field of n bits |
| F | Symbol record type indicator |
| G | Scope is global |
| F Filename | Scope is file |
| L Function | Scope is local |
| Name | Symbol name |
| Level | Scope level (see below) |
| Block | Scope block (see below) |
| TypeChain | Type chain record (see type record below) |
| Address Space | Address space code see table below |
| On Stack | Indicates if this is a stack variable |
| Stack | If stack variable, the stack offset relative to the ``bp'' variable. (Libraries will have to be compiled using the --debug option for this to be available) |
| Is Interrupt | Indicates if this is an interrupt handler. |
| Interrupt Num | If interrupt handler, this indicates the interrupt number. |
| Register Bank | If interrupt handler, this ist he register bank number. |
| T | Type record type indicator |
| Filename | The filename where this type is declared |
| Name | The name of this type |
| TypeMember | (see below) |
| Offset | The offset of this type member in decimal. |
| SymbolRecord | A complete symbol record describing this Member. (See ``Symbol Records'' above. |
| L | Link record type indicator |
| G | Symbol has file scope. |
| F Filename | Symbol has file scope. |
| L Function | Symbol has function scope |
| Name | Symbol name |
| Level | Symbol level |
| Block | Symbol block |
| Address | Symbol address in hex, relative to the address space code, in the matching symbol record. |
| L | Link record type indicator |
| X | Link end address sub type indicator |
| G | Symbol has file scope. |
| F Filename | Symbol has file scope. |
| L Function | Symbol has function scope. |
| Name | Symbol name |
| Level | Symbol level |
| Block | Symbol block |
| Address | Symbol end address in hex, relative to the address space code contained in the matching symbol record. |
| L | Link record type indicator |
| A | Link assembly file line record sub type indicator |
| Filename | Filename of the assembly file. |
| Line | Line number in the above filename.{}These numbers start at 1 (not 0). |
| EndAdress | End address |
| L | Link record type indicator |
| C | Link assembly file line record sub type indicator |
| Filename | Filename of the assembly file. |
| Line | Line number in the above filename. These numbers start at 1 (not 0). |
| Level | Current level at this line and address. |
| Block | Current block at this line and address. |
| EndAddress | End address |
| 01 | ||
| 02 | struct complex | |
| 03 | { | |
| 04 | int count; | |
| 05 | int Max; | |
| 06 | }; | |
| 07 | ||
| 08 | L:C$vars.c$8$0$0:38 | void main(void) |
| 09 | { | |
| 10 | int iterA; | |
| 11 | int iterB; | |
| 12 | struct complex myStruct; | |
| 13 | ||
| 14 | L:C$vars.c$14$1$1:C1 | for(iterA = 0; iterA < 10; iterA++) |
| 15 | { | |
| 16 | L:C$vars.c$16$2$2:B9 | for(iterB = 0; iterB < 10; iterB++) |
| 17 | { | |
| 18 | int iterA = 6 + iterB; | |
| 19 | iterA++; | |
| 20 | ||
| 21 | L:C$vars.c$21$1$1:69 | myStruct.count++; |
| 22 | ||
| 23 | L:C$vars.c$23$3$3:83 | if(myStruct.count > myStruct.Max) |
| 24 | L:C$vars.c$24$3$3:A3 | myStruct.Max = mystruct.count; |
| 25 | } | |
| 26 | } | |
| 27 | L:C$vars.c$27$1$1:CE | } |
This document was translated from LATEX by HEVEA.