errorfmt -i gcc 'error: \(Each undeclared identifier is reported only once'
errorfmt -i gcc 'error: for each function it appears in.\)'
errorfmt -i gcc '^([^:]+):([0-9]+): (error|warning): \(near '
errorfmt -i gcc '^([^:]+):([0-9]+):([0-9]+):$'

errorfmt gcc '^([^:]+):([0-9]+):([0-9]+): (.*)' file line column message
errorfmt gcc '^([^:]+):([0-9]+): (.*)' file line message
errorfmt gcc '^.* at (.+):([0-9]+):$' file line
errorfmt gcc " *inlined from '.*' at (.*):([0-9]+):" file line

# ASan stack trace (e.g. " #12 0x55af25320630 in func_name src/filename.c:1142")
errorfmt gcc '^ *(#[0-9]+ 0x[0-9A-Fa-f]+ in [[:alnum:]_]+) ([^:]+):([0-9]+)$' message file line

errorfmt -i gcc '^In file included from (.+):([0-9]+)[,:]'
errorfmt -i gcc '^ +from (.+):([0-9]+)[,:]'
errorfmt -i gcc '^([^:]+): (In function .*:)$'
errorfmt -i gcc "^In function '.*',$"
errorfmt -i gcc '^([^:]+): At top level:$'
errorfmt -i gcc '^cc1: (all |some )?warnings being treated as errors$'
errorfmt -i gcc '^make: \*\*\* \[.*\] Error [0-9]+$'
errorfmt -i gcc '^make: \*\*\* Waiting for unfinished jobs'
errorfmt -i gcc '^make: \*\*\* wait: No child processes.  Stop'
errorfmt -i gcc '^collect2: ld returned [0-9]+ exit status$'
errorfmt -i gcc '^[ \t]'
errorfmt -i gcc '^[0-9]+ warnings? generated.$'
