Sha256: 5c1a2246a71b5c8eb201566fdcaad084c123f387c801c44b056a5421df375348
Contents?: true
Size: 1.04 KB
Versions: 18
Compression:
Stored size: 1.04 KB
Contents
require 'cxxproject/errorparser/error_parser' module Cxxproject class GCCCompilerErrorParser < ErrorParser def initialize() @error_expression = /([^:]+):([0-9]+)[:0-9]* (catastrophic |fatal )*([A-Za-z\._]+): (.+)/ end def scan_lines(consoleOutput, proj_dir) res = [] consoleOutputFullnames = "" consoleOutput.each_line do |l| d = ErrorDesc.new scan_res = l.gsub(/\r\n?/, "").scan(@error_expression) if scan_res.length > 0 d.file_name = File.expand_path(scan_res[0][0]) d.line_number = scan_res[0][1].to_i d.message = scan_res[0][4] if (scan_res[0][3].include?".") d.severity = SEVERITY_ERROR d.message = scan_res[0][3] + ": " + d.message else d.severity = get_severity(scan_res[0][3]) end l.gsub!(scan_res[0][0],d.file_name) end res << d consoleOutputFullnames << l end [res, consoleOutputFullnames] end end end
Version data entries
18 entries across 18 versions & 1 rubygems