#!/bin/sh
test "$1" = 'a'&&exec cat||{ grep -v -i -e 'pointer-sign' -e ' but argument is of type' -e unused-variable -e unused-but-set-variable -e implicit-int -e "inside '<<'" -e "inside '>>'" -e 'char-subscripts' -e 'within comment' -e "'discard_callback' from incompatible pointer type"|
csh 'char match2(char *s){if(!strncmp1(s,"In file "))return 1;else return 0;}' 'char match2i(char *s){char *s1=s;while(*s&&(*s=='\'' '\''||*s=='\''\t'\''))s+=1;if(!strncmp1(s,"from ")){int len=strlen(s);if(len>0&&s[len-1]=='\'':'\'')return 1;}return 0;}' 'char match1(char *s){char *res=strchr(s,'\'':'\'');if(res&&(!strncmp1(res+1," In function ")||!strncmp1(res+1," At top level:")))return 1;else return 0;}' 'char end_io[]={'\''\0'\'','\''\0'\''}' 'char *line_m=NULL,*line_m2=NULL;while(1){char *line=readline_dup(0,end_io);if(!line)break;if(line&&match2(line))frep(line_m2,line);else if(line&&match2i(line));else if(line&&match1(line))frep(line_m,line);else {if(line_m2){dprintf(1,"%s\n",line_m2);freez(line_m2);}if(line_m){dprintf(1,"%s\n",line_m);freez(line_m);}if(!line)break;dprintf(1,"%s\n",line);free(line);}}' -- o="$(which "$0")"-bin1;}