### .purify: Purify message suppressions ###
###
### author:		Rainer Doemer
### last updated:	Jan 27, 1998
###

###
### file $PURIFYHOME/.purify
###
#
#   Purify message suppressions.
#
#   The .purify and .purify.<platform> files are merged from :
#
#     - the directory in which your program is stored
#     - your home directory
#     - Purify's home directory
#
#   Each one has lines like :
#
#       'suppress abr Xm*Destroy; XmListDelete'
#
#   where the first word is 'suppress', the second word is the message type :
#
#	abr  -- array bounds violation read
#	abw  -- array bounds violation write
#	brk  -- misuse of brk or sbrk
#	bsr  -- beyond stack read
#	bsw  -- beyond stack write
#	cor  -- core dump imminent
#	fmr  -- free memory read
#	fmw  -- free memory write
#	fnh  -- freeing non heap memory
#	fum  -- freeing unallocated memory
#	maf  -- malloc failure
#	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
#	sig  -- signal
#	sof  -- stack overflow
#	umc  -- uninitialized memory copy
#	umr  -- uninitialized 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
#
#   and subsequent words give the semi-colon delimited function call-chain
#   you want the message suppressed in.  A function name may be augmented
#   by a filename enclosed in double quotes.  Function and filenames can 
#   use '*' as wildcard, which matches zero or more characters. '...' 
#   matches zero or more functions.
#
#   C++ functions are listed in "pretty" form, not mangled form.
#   suppress fnh List::AddElement(char*)
#
#   The .purify files are re-read on the fly if they have changed,
#   so you don't have to restart to get newly added suppressions.

# By default suppress all UMC (uninitialized-memory copy) errors.
# suppress umc *

# Suppress warnings for overlapping copies in string functions
#   because too many of these are theoretical problems with no effect.
# suppress par memccpy
# suppress par memcpy
# suppress par strcpy
# suppress par strncpy
# suppress par bcopy

# X writes structs with uninit padding down the server-client connection.
#   These are not bugs.
# suppress umr writev; _X*
# suppress umr write; _X*
# suppress umr write; XNextEvent; XN*; _X*; Query*; Urm__*
# suppress umr _writev; _X*
# suppress umr _write; _X*
# suppress umr _write; XNextEvent; XN*; _X*; Query*; Urm__*

# Other suppressions for Xlib provided by Kinne Strong -- uncomment to enable
#suppress umr QueryGeometry; XtQueryGeometry
#suppress umr HandleChangeManaged
#suppress umr DecideToDispatch
#suppress umr UpdatePointerData
#suppress abr GetNextFontList; _XmCvtStringToXmFontList; XtDirectConvert
#suppress umr CalcEdgeValues
#suppress umr _XmTextInvalidate

# Suppressions for Motif from Rick Anderson, ESCA Corp -- uncomment to enable
#suppress abr write; XN*; _X*; Query*; Urm__*
#suppress umr Xm*

# For some version of gcc2
# suppress miu on_exit;__do_global_ctors


###
### suppressions for SpecC
###

### problems in system libraries etc.

suppress umr qst; qsort; rx_compactify_nfa; rx_compile
suppress umr _doprnt

# EOF .purify
