Rational Purify: What it does

 Using Purify

 The basic steps

 Instrumenting and running your program

 Analyzing Purify error messages

 Correcting errors and rerunning

 Saving error data

 Using Purify with test harnesses, makefiles, and scripts

 Customizing Purify

 About customizing Purify

 Mailing Purify output to team members

 Annotating Purify output

 Customizing Purify messages

 Controlling message batching

 Customizing threads handling

 Enabling just-in-time debugging

 Reporting Purify status at exit

 Running shell scripts at exit

 Customizing the Purify Viewer

 Using and customizing Purify scripts

 Customizing the program controls

 Managing cached object files

 Selecting a configuration management system

 Configuring a change request management tool

 Purify messages

 Purify messages: overview

 ABR: array bounds read

 ABW: array bounds write

 BRK: misuse of brk or sbrk

 BSR: beyond stack read

 BSW: beyond stack write

 COR: core dump imminent

 FIU: file descriptors in use

 FMM: freeing mismatched memory

 FMR: free memory read

 FMW: free memory write

 FNH: freeing non-heap memory

 FUM: freeing unallocated memory

 IPR: invalid pointer read

 IPW: invalid pointer write

 MAF: malloc failure

 MIU: memory in use

 MLK: memory leak

 MRE: malloc reentrancy error

 MSE: memory segment error

 NPR: null pointer read

 NPW: null pointer write

 PAR: bad parameter

 PLK: potential memory leak

 PMR: partial UMR

 SBR: stack array bounds read

 SBW: stack array bounds write

 SIG: signal message

 SOF: stack overflow

 UMC: uninitialized memory copy

 UMR: unitialized memory read

 WPF: watchpoint free

 WPM: watchpoint malloc

 WPN: watchpoint entry

 WPR: watchpoint read

 WPW: watchpoint write

 WPX: watchpoint exit

 ZPR: zero page read

 ZPW: zero page write

 Purify options

 About Purify options

 Using Purify options

 Build-time options

 Annotation option

 Exit processing options

 File descriptor options

 Mail mode option

 Memory access options

 Memory leak options

 Message appearance options

 Message batching option

 Output mode options

 Static checking options

 Suppression option

 Threads options

 Watchpoint option

 Miscellaneous options

 Purify API

 About Purify API functions

 Calling Purify API functions

 Annotation API functions

 Exit processing API function

 File descriptor API functions

 Memory access API functions

 Memory leak API functions

 Message batching API functions

 Pool allocation API functions

 Threads API function

 Watchpoint API functions

 Miscellaneous API functions

 Reference and contact information

 Contacting Technical Support

 Filing bug reports with Rational Software

 Contacting Technical Publications

 Accessing the Rational Developer Network

 Purify overhead

 Troubleshooting

 Glossary