提交 9c43dbb3 编写于 作者: A Andy Gocke

Merge pull request #7914 from agocke/allow-public-sign-and-delay-sign-false

Allow publicsign true and delaysign false
......@@ -566,7 +566,7 @@ internal override void ValidateOptions(ArrayBuilder<Diagnostic> builder)
}
}
if (PublicSign && DelaySign.HasValue)
if (PublicSign && DelaySign == true)
{
builder.Add(Diagnostic.Create(MessageProvider.Instance, (int)ErrorCode.ERR_MutuallyExclusiveOptions, nameof(PublicSign), nameof(DelaySign)));
}
......
......@@ -555,6 +555,23 @@ public void PublicSignAndDelaySign()
Assert.True(comp.Options.DelaySign);
}
[Fact]
public void PublicSignAndDelaySignFalse()
{
var snk = Temp.CreateFile().WriteAllBytes(TestResources.General.snKey);
var comp = CreateCompilationWithMscorlib("public class C {}",
options: TestOptions.ReleaseDll
.WithPublicSign(true)
.WithDelaySign(false)
.WithCryptoKeyFile(snk.Path));
comp.VerifyDiagnostics();
Assert.True(comp.Options.PublicSign);
Assert.False(comp.Options.DelaySign);
}
[Fact]
public void PublicSignNoKey()
{
......
......@@ -933,7 +933,7 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
End If
End If
If PublicSign AndAlso DelaySign.HasValue Then
If PublicSign AndAlso DelaySign = True Then
builder.Add(Diagnostic.Create(MessageProvider.Instance, ERRID.ERR_MutuallyExclusiveOptions, NameOf(PublicSign), NameOf(DelaySign)))
End If
End Sub
......
......@@ -1767,6 +1767,28 @@ BC2046: Compilation options 'PublicSign' and 'DelaySign' can't both be specified
Assert.True(comp.Options.DelaySign)
End Sub
<Fact>
Public Sub PublicSignAndDelaySignFalse()
Dim snk = Temp.CreateFile().WriteAllBytes(TestResources.General.snKey)
Dim options = TestOptions.ReleaseDll.WithCryptoKeyFile(snk.Path).WithPublicSign(True).WithDelaySign(False)
Dim comp = CreateCompilationWithMscorlib(
<compilation>
<file name="a.vb"><![CDATA[
Public Class C
End Class
]]>
</file>
</compilation>,
options:=options
)
AssertTheseDiagnostics(comp)
Assert.True(comp.Options.PublicSign)
Assert.False(comp.Options.DelaySign)
End Sub
<Fact, WorkItem(769840, "DevDiv")>
Public Sub Bug769840()
Dim ca = CreateCompilationWithMscorlib(
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册