Sha256: c4be679e177516cf1e08c2cb6a6028733b5ad4c6bb3a14b1b709fe7b6ef18f18

Contents?: true

Size: 1.28 KB

Versions: 36

Compression:

Stored size: 1.28 KB

Contents

require 'bake/toolchain/errorparser/error_parser'

module Bake
  class DiabCompilerErrorParser < ErrorParser

    def initialize()
      @error_expression_start = /\"(.+)\", line ([0-9]+): (?!included)(catastrophic |fatal )*([A-Za-z]+)[:]* (.+)/
      @error_expression_end = /^[ \t]*\^/ # well, it may end without "^"... in this case the error will last the next one starts or console text ends
    end

    def scan_lines(consoleOutput, proj_dir)
      res = []
      error_severity = 255
      consoleOutputFullnames = ""
      consoleOutput[0].each_line do |l|
        d = ErrorDesc.new
        lstripped = l.rstrip
        scan_res = lstripped.scan(@error_expression_start)
        if scan_res.length == 0
          d.severity = error_severity
          d.message = lstripped
          if lstripped.scan(@error_expression_end).length > 0
            error_severity = 255
          end
        else
          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]
          d.severity = get_severity(scan_res[0][3])
          error_severity = d.severity
          l.gsub!(scan_res[0][0],d.file_name)
        end
        res << d
        consoleOutputFullnames << l
      end
      [res, consoleOutputFullnames]
    end

  end
end

Version data entries

36 entries across 36 versions & 1 rubygems

Version Path
bake-toolkit-2.32.0 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.31.7 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.31.5 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.31.4 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.31.2 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.31.0 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.30.0 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.29.4 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.29.3 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.29.2 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.29.0 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.28.1 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.28.0 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.27.0 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.26.1 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.26.0 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.25.1 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.25.0 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.24.6 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb
bake-toolkit-2.24.5 lib/bake/toolchain/errorparser/diab_compiler_error_parser.rb