Developer Guide and Reference

ID 767251
Date 10/31/2024
Public
Document Table of Contents

traceback

Tells the compiler to generate extra information in the object file to provide source file traceback information when a severe error occurs at runtime.

Syntax

Linux:

-traceback

-notraceback

Windows:

/traceback

/notraceback

Arguments

None

Default

notraceback

No extra information is generated in the object file to produce traceback information.

Description

This option tells the compiler to generate extra information in the object file to provide source file traceback information when a severe error occurs at runtime.

When the severe error occurs, source file, routine name, and line number correlation information is displayed along with call stack hexadecimal addresses (program counter trace).

Note that when a severe error occurs, advanced users can also locate the cause of the error using a map file and the hexadecimal addresses of the stack displayed when the error occurs.

This option increases the size of the executable program, but has no impact on runtime execution speeds.

It functions independently of the debug option.

Linux

To display the section headers in the image (including the header for the .trace section, if any), use the command:

objdump -h your_app_name.exe

Windows

Option traceback sets the /Oy- option, which forces the compiler to use EBP as the stack frame pointer.

The linker places the traceback information in the executable image, in a section named ".trace". To see which sections are in an image, use the command:

link -dump -summary your_app_name.exe

To see more detailed information, use the command:

link -dump -headers your_app_name.exe

When requesting traceback, you must set Enable Incremental Linking in the VS .NET* IDE Linker Options to No. You must also set Omit Frame Pointers (the /Oy option) in the Optimization Options to "No."

IDE Equivalent

Visual Studio: Run-time > Generate Traceback Information

Alternate Options

None