dotnet/roslyn

VBC emitting extra console output on warning with " error:"

開放

#5,724 建立於 2015年10月6日

 (14 則留言) (3 個反應) (0 位負責人)C# (4,257 個分叉)batch import
Area-CompilersBughelp wanted

倉庫指標

星標
 (20,414 顆星)
PR 合併指標
 (PR 指標待抓取)

描述

Couldn't find an existing issue for this one (but could've missed it).

Compile the following piece of VB code in VS2015 with the "Implicit Type; Object Assumed" option set to "Warning":

Module Module1

    Sub Main()

        ' Causes build to fail
        Dim sEvent = String.Concat(" Error:", "Whatever")
        ' Won't cause build to fail
        Dim sEvent2 = String.Concat(" Another: ", "Whatever")
    End Sub

End Module

Both variable declarations will trigger a BC42020 warning. However, when the compiler encounters the sEvent declaration, it will include the line in the compiler output right after the warning, because it has the text " Error:" (leading space makes a difference).

This causes MSBuild/VS2015 to think the build failed and generate an strange error entry in the Errors window, even though only warnings were emitted during the build.

貢獻者指南