Oracle® Solaris Studio 12.4:使用 dbx 调试程序

退出打印视图

更新时间: 2015 年 1 月
 
 

理解内存访问错误报告

运行时检查可为内存访问错误提供以下信息:

type

错误类型。

access

尝试访问的类型(读取或写入)。

size

尝试访问的大小。

address

尝试访问的地址。

size

泄漏块的大小。

detail

有关地址的更多详细信息。例如,如果地址在邻近堆栈中,便会提供其相对当前堆栈指针的位置。如果地址在堆中,便会提供最近堆块的地址、大小和相对位置。

stack

出错时调用堆栈(批处理模式)。

allocation

如果地址在堆中,便会提供最近堆块的分配跟踪。

location

出错位置。如果有行号信息,则此信息包括行号和函数。如果无行号,运行时检查会提供函数和地址。

以下示例显示的是一个典型的访问错误。

Read from uninitialized (rui):
Attempting to read 4 bytes at address 0xefffee50
    which is 96 bytes above the current stack pointer
Variable is ”j’
Current function is rui
   12           i = j;