protected function parseLinterOutput($path, $err, $stdout, $stderr)
 {
     $lines = phutil_split_lines($stdout, false);
     $messages = array();
     foreach ($lines as $line) {
         $matches = explode(':', $line, 4);
         if (count($matches) === 4) {
             $message = new ArcanistLintMessage();
             $message->setPath($path);
             $message->setLine($matches[1]);
             $message->setChar($matches[2]);
             $message->setCode($this->getLinterName());
             $message->setName($this->getLinterName());
             $message->setDescription(ucfirst(trim($matches[3])));
             $message->setSeverity($this->getLintMessageSeverity($message->getCode()));
             $messages[] = $message;
         }
     }
     return $messages;
 }