---
name: "UilDumpSymbolTable"
section: "3"
platform: "linux"
package: "openmotif"
version: "2.3.8-4"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/UilDumpSymbolTable"
---

# UilDumpSymbolTable(3)

Dumps the contents of a named UIL symbol table to standard output

## NAME

**UilDumpSymbolTable** — Dumps the contents of a named UIL symbol table to standard output

## SYNOPSIS

```
#include <uil/UilDef.h>

void UilDumpSymbolTable(
sym_entry_type *root_ptr);
```

## DESCRIPTION

The **UilDumpSymbolTable** function dumps the contents of a UIL symbol table pointer to standard output.

- *root\_ptr*

  Specifies a pointer to the the symbol table root entry. This value can be taken from the **parse\_tree\_root** part of the **Uil\_compile\_desc\_type** data structure returned by **Uil**.

By following the link from the root entry, you can traverse the entire parse tree. Symbol table entries are in the following format:

**hex.address** **symbol.type** **symbol.data** **prev.source.position** **source.position** **modification.record**

where:

- **hex.address**

  Specifies the hexadecimal address of this entry in the symbol table.

- **symbol.type**

  Specifies the type of this symbol table entry. Some possible types are *root*, *module*, *value*, *procedure*, and *widget*.

- **symbol.data**

  Specifies data for the symbol table entry. The data varies with the type of the entry. Often it contains pointers to other symbol table entries, or the actual data for the data type.

- **prev.source.position**

  Specifies the end point in the source code for the previous source item.

- **source.position**

  Specifies the range of positions in the source code for this symbol.

The exact data structures for each symbol type are defined in the include file **UilSymDef.h**. Note that this file is automatically included when an application includes the file **UilDef.h**.

## RELATED

[**Uil**(3)](/Uil/3.md)
