#!/bin/sh awk ' BEGIN{ pattern = "(my_free|my_malloc|my_realloc|my_calloc|my_strdup|my_strndup|my_strdup2|my_mstrcat|my_strcat|my_strncat)\\(" } $0 ~ pattern "[0-9]+" { if($0 !~/^ *\/\*/) { a = $0 sub("^.*" pattern,"", a) sub(/ *,.*/,"", a) print a "\t" FILENAME "\t" $0 } } ' \ actions.c \ callback.c \ check.c \ clip.c \ draw.c \ editprop.c \ expandlabel.y \ findnet.c \ font.c \ globals.c \ hash_iterator.c \ hilight.c \ icon.c \ in_memory_undo.c \ main.c \ move.c \ netlist.c \ node_hash.c \ options.c \ parselabel.l \ paste.c \ psprint.c \ rawtovcd.c \ save.c \ scheduler.c \ select.c \ spice_netlist.c \ store.c \ svgdraw.c \ tedax_netlist.c \ token.c \ verilog_netlist.c \ vhdl_netlist.c \ xinit.c \ | sort -n \ | awk '{ if(n>0 && $1 <= prev) print ">>>>>>>>>>> ERROR >>>>>>>>> " $0 else if(n>0 && $1 != prev+1) { if($1-1 > prev+1) print ">>>>>>>>>>> FREE >>>>>>>>> " prev+1 ":" $1-1 else print ">>>>>>>>>>> FREE >>>>>>>>> " $1-1 print } else print n++ prev = $1 } END{ print ">>>>>>> END FREE >>>>>>>>> " prev + 1 " ..." } '