Uploaded image for project: 'Jenkins'
  1. Jenkins
  2. JENKINS-70855

MSBuild parser multiplies warnings when compiling with /MP

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Minor Minor
    • analysis-model
    • Jenkins in Version 2.346.3
      Analysis Model API in Version 10.23.1
      Warnings Next Generation in Version 9.23.1

      When using switch /MP with MSBuild to enable multi-threaded compilation, the MSVC compiler will output a log line like

      195>c:\jenkins\workspace\develop\foo.h(76): warning C4100: 'Id': unreferenced formal parameter (compiling source file bar.cpp) [C:\jenkins\workspace\develop\project.vcxproj]
      

      for warnings in header files. These lines are repeated for every translation unit the header file is included in. They will only differ in the translation unit's file name (bar.cpp in the above example) and always refer to the same cause in the header file (foo.h in the above example).
      However, Jenkins treats each of these log lines as separate warnings. So if the same header is included in two different translation units Jenkins will report each warning in this header twice.
      This breaks quality gates when comparing builds using /MP with builds that don't.

            Unassigned Unassigned
            marne Marne
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated: