未验证 提交 dfaef54e 编写于 作者: A AlekseyTs 提交者: GitHub

Target newer version of Microsoft.NETCore.App for tests. (#33548)

Closes #32540.
Closes #33083.
上级 346b8973
......@@ -76,11 +76,11 @@
<MicrosoftNetCompilersVersion>3.0.0-beta2-19068-12</MicrosoftNetCompilersVersion>
<MicrosoftNetCoreAnalyzersVersion>$(RoslynDiagnosticsNugetPackageVersion)</MicrosoftNetCoreAnalyzersVersion>
<!-- PROTOTYPE(DefaultInterfaceImplementation): The MicrosoftNetCoreILAsmVersion was 2.0.0 -->
<MicrosoftNetCoreILAsmVersion>3.0.0-preview-27312-01</MicrosoftNetCoreILAsmVersion>
<MicrosoftNetCoreILAsmVersion>3.0.0-preview4-27420-71</MicrosoftNetCoreILAsmVersion>
<MicrosoftNETCoreCompilersVersion>3.0.0-beta2-19068-12</MicrosoftNETCoreCompilersVersion>
<MicrosoftNETCorePlatformsVersion>2.1.0</MicrosoftNETCorePlatformsVersion>
<!-- PROTOTYPE(DefaultInterfaceImplementation): The MicrosoftNETCoreRuntimeCoreCLRVersion was 2.0.0 -->
<MicrosoftNETCoreRuntimeCoreCLRVersion>3.0.0-preview-27313-3</MicrosoftNETCoreRuntimeCoreCLRVersion>
<MicrosoftNETCoreRuntimeCoreCLRVersion>3.0.0-preview4-27420-5</MicrosoftNETCoreRuntimeCoreCLRVersion>
<!-- Using a private build of Microsoft.Net.Test.SDK to work around issue https://github.com/Microsoft/vstest/issues/1764 -->
<MicrosoftNETTestSdkVersion>15.9.0-dev2</MicrosoftNETTestSdkVersion>
<MicrosoftNetFX20Version>1.0.3</MicrosoftNetFX20Version>
......@@ -322,6 +322,13 @@
https://vside.myget.org/F/vs-impl/api/v3/index.json;
https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json;
https://dotnet.myget.org/F/system-commandline/api/v3/index.json;
<!--
PROTOTYPE(DefaultInterfaceImplementation): added the https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json (Microsoft.NETCore.App) and
https://dotnetfeed.blob.core.windows.net/dotnet-coreclr/index.json (Microsoft.NETCore.ILAsm) sources below
-->
https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json;
https://dotnetfeed.blob.core.windows.net/dotnet-coreclr/index.json;
</RestoreSources>
</PropertyGroup>
......
{
"tools": {
"dotnet": "3.0.100-preview-010088",
"dotnet": "3.0.100-preview4-010391",
"vs": {
"version": "15.8"
},
......
......@@ -9798,7 +9798,9 @@ .maxstack 4
");
}
[Fact, WorkItem(538246, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/538246"), WorkItem(543655, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/543655")]
[ConditionalFact(typeof(WindowsDesktopOnly), Reason = "https://github.com/dotnet/roslyn/issues/33564")] // PROTOTYPE(DefaultInterfaceImplementation): https://github.com/dotnet/roslyn/issues/33564
[WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")]
[WorkItem(538246, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/538246"), WorkItem(543655, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/543655")]
public void FloatDoubleInfinity()
{
string source = @"
......@@ -12880,7 +12882,8 @@ static void Main()
Diagnostic(ErrorCode.ERR_ConstOutOfRange, "(decimal)-4e30f").WithArguments("-4E+30", "decimal"));
}
[Fact]
[ConditionalFact(typeof(WindowsDesktopOnly), Reason = "https://github.com/dotnet/roslyn/issues/33564")] // PROTOTYPE(DefaultInterfaceImplementation): https://github.com/dotnet/roslyn/issues/33564
[WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")]
public void Bug14064()
{
string source = @"
......
......@@ -462,7 +462,9 @@ IEnumerable<int> M()
</symbols>");
}
[ConditionalFact(typeof(WindowsOnly), Reason = ConditionalSkipReason.NativePdbRequiresDesktop)]
[ConditionalFact(typeof(WindowsDesktopOnly), Reason = "https://github.com/dotnet/roslyn/issues/33564")] // PROTOTYPE(DefaultInterfaceImplementation): https://github.com/dotnet/roslyn/issues/33564
// PROTOTYPE(DefaultInterfaceImplementation): Was [ConditionalFact(typeof(WindowsOnly), Reason = ConditionalSkipReason.NativePdbRequiresDesktop)]
[WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")]
public void LocalConstantsTypes()
{
var text = @"
......
......@@ -895,7 +895,9 @@ static void M()
Diagnostic(ErrorCode.ERR_CheckedOverflow, "U64.Min - 2").WithLocation(89, 11));
}
[Fact, WorkItem(528727, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/528727")]
[ConditionalFact(typeof(WindowsDesktopOnly), Reason = "https://github.com/dotnet/roslyn/issues/33564")] // PROTOTYPE(DefaultInterfaceImplementation): https://github.com/dotnet/roslyn/issues/33564
[WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")]
[WorkItem(528727, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/528727")]
public void TestConstantNumericConversionsNotOverflow()
{
var source = @"
......
......@@ -547,7 +547,9 @@ class Program
);
}
[ClrOnlyFact(ClrOnlyReason.MemberOrder)]
[ConditionalFact(typeof(WindowsDesktopOnly), Reason = "https://github.com/dotnet/roslyn/issues/33564")] // PROTOTYPE(DefaultInterfaceImplementation): https://github.com/dotnet/roslyn/issues/33564
// PROTOTYPE(DefaultInterfaceImplementation): Was [ClrOnlyFact(ClrOnlyReason.MemberOrder)]
[WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")]
public void TestNameofIndexerName()
{
var source = @"
......
......@@ -52,11 +52,7 @@ private static Verification VerifyOnCoreClr
private void ValidateMethodImplementation_011(string source)
{
foreach (string access in new[] { "x.M1();"
#if Issue33083_Is_Fixed // https://github.com/dotnet/roslyn/issues/33083
, "new System.Action(x.M1)();"
#endif
})
foreach (string access in new[] { "x.M1();", "new System.Action(x.M1)();" })
{
foreach (string typeKind in new[] { "class", "struct" })
{
......@@ -24454,12 +24450,10 @@ static void Main()
compilation2.VerifyDiagnostics();
CompileAndVerify(compilation2,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1
I4.M1
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidateMethodImplementationInDerived_01);
......@@ -24471,12 +24465,10 @@ static void Main()
compilation3.VerifyDiagnostics();
CompileAndVerify(compilation3,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1
I4.M1
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidateMethodImplementationInDerived_01);
}
......@@ -25271,12 +25263,10 @@ static void Main()
compilation2.VerifyDiagnostics();
CompileAndVerify(compilation2,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1
I4.M1
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidateMethodImplementationInDerived_01);
......@@ -25288,12 +25278,10 @@ static void Main()
compilation3.VerifyDiagnostics();
CompileAndVerify(compilation3,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1
I4.M1
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidateMethodImplementationInDerived_01);
......@@ -26039,13 +26027,11 @@ private void ValidatePropertyImplementationInDerived_01(string source1, string s
compilation2.VerifyDiagnostics();
CompileAndVerify(compilation2,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1
I4.M1
",
#endif
verify: VerifyOnCoreClr,
verify: VerifyOnCoreClr,
symbolValidator: ValidatePropertyImplementationInDerived_01);
var compilation3 = CreateCompilation(source2, new[] { compilation1.EmitToImageReference() }, options: options,
......@@ -26056,13 +26042,11 @@ private void ValidatePropertyImplementationInDerived_01(string source1, string s
compilation3.VerifyDiagnostics();
CompileAndVerify(compilation3,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1
I4.M1
",
#endif
verify: VerifyOnCoreClr,
verify: VerifyOnCoreClr,
symbolValidator: ValidatePropertyImplementationInDerived_01);
}
}
......@@ -26977,13 +26961,11 @@ static void Main()
compilation2.VerifyDiagnostics();
CompileAndVerify(compilation2,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1
I4.M1
I4.M1.set
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidatePropertyImplementationInDerived_01);
......@@ -26995,13 +26977,11 @@ static void Main()
compilation3.VerifyDiagnostics();
CompileAndVerify(compilation3,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1
I4.M1
I4.M1.set
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidatePropertyImplementationInDerived_01);
......@@ -27829,14 +27809,12 @@ static void Main()
compilation2.VerifyDiagnostics();
CompileAndVerify(compilation2,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1.add
I2.M1.remove
I4.M1.add
I4.M1.remove
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidateEventImplementationInDerived_01);
......@@ -27848,14 +27826,12 @@ static void Main()
compilation3.VerifyDiagnostics();
CompileAndVerify(compilation3,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1.add
I2.M1.remove
I4.M1.add
I4.M1.remove
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidateEventImplementationInDerived_01);
}
......@@ -28571,14 +28547,12 @@ static void Main()
compilation2.VerifyDiagnostics();
CompileAndVerify(compilation2,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1.add
I2.M1.remove
I4.M1.add
I4.M1.remove
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidateEventImplementationInDerived_01);
......@@ -28590,14 +28564,12 @@ static void Main()
compilation3.VerifyDiagnostics();
CompileAndVerify(compilation3,
#if Issue32540_Is_Fixed // https://github.com/dotnet/roslyn/issues/32540
expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"I2.M1.add
I2.M1.remove
I4.M1.add
I4.M1.remove
",
#endif
verify: VerifyOnCoreClr,
symbolValidator: ValidateEventImplementationInDerived_01);
......@@ -36789,9 +36761,7 @@ interface C
var compilation1 = CreateCompilation(source, options: TestOptions.DebugExe, targetFramework: TargetFramework.NetStandardLatest);
compilation1.VerifyDiagnostics();
var verifier = CompileAndVerify(compilation1
#if Issue33083_Is_Fixed // https://github.com/dotnet/roslyn/issues/33083
, expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
var verifier = CompileAndVerify(compilation1, expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"
A
B
......@@ -36803,7 +36773,6 @@ interface C
B
C
"
#endif
, verify: VerifyOnCoreClr);
verifier.VerifyIL("D.Test",
@"
......@@ -40858,6 +40827,7 @@ .maxstack 2
[Fact]
[WorkItem(33083, "https://github.com/dotnet/roslyn/issues/33083")]
[WorkItem(33535, "https://github.com/dotnet/roslyn/issues/33535")]
public void ExplicitBase_107_Delegate()
{
var source = @"
......@@ -40929,7 +40899,7 @@ interface D
compilation1.VerifyDiagnostics();
var verifier = CompileAndVerify(compilation1
#if Issue33083_Is_Fixed // https://github.com/dotnet/roslyn/issues/33083
#if Issue33535_Is_Fixed // https://github.com/dotnet/roslyn/issues/33535
, expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"
B
......@@ -42040,9 +42010,7 @@ class G : E
var compilation1 = CreateCompilation(source1, references: new[] { reference }, options: TestOptions.DebugExe, targetFramework: TargetFramework.NetStandardLatest);
compilation1.VerifyDiagnostics();
var verifier = CompileAndVerify(compilation1
#if Issue33083_Is_Fixed // https://github.com/dotnet/roslyn/issues/33083
, expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
var verifier = CompileAndVerify(compilation1, expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"
B
B
......@@ -42051,7 +42019,6 @@ class G : E
B
B
"
#endif
, verify: VerifyOnCoreClr);
verifier.VerifyIL("F.Test",
......@@ -46921,6 +46888,7 @@ .maxstack 1
[Fact]
[WorkItem(33083, "https://github.com/dotnet/roslyn/issues/33083")]
[WorkItem(33535, "https://github.com/dotnet/roslyn/issues/33535")]
public void ExplicitBase_150_Delegate()
{
var source = @"
......@@ -46989,7 +46957,7 @@ interface D
compilation1.VerifyDiagnostics();
var verifier = CompileAndVerify(compilation1
#if Issue33083_Is_Fixed // https://github.com/dotnet/roslyn/issues/33083
#if Issue33535_Is_Fixed // https://github.com/dotnet/roslyn/issues/33535
, expectedOutput: !CoreClrShim.IsRunningOnCoreClr ? null :
@"
B
......@@ -266,8 +266,9 @@ public void TestSeparatedListFactory_DefaultSeparators()
Assert.Equal("x,y,z", list2.ToString());
}
[ConditionalFact(typeof(WindowsDesktopOnly), Reason = "https://github.com/dotnet/roslyn/issues/33564")] // PROTOTYPE(DefaultInterfaceImplementation): https://github.com/dotnet/roslyn/issues/33564
[WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")]
[WorkItem(720708, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/720708")]
[Fact]
public void TestLiteralDefaultStringValues()
{
// string
......@@ -337,8 +338,9 @@ public void TestLiteralDefaultStringValues()
CheckLiteralToString(decimal.MaxValue, @"79228162514264337593543950335M");
}
[ConditionalFact(typeof(WindowsDesktopOnly), Reason = "https://github.com/dotnet/roslyn/issues/33564")] // PROTOTYPE(DefaultInterfaceImplementation): https://github.com/dotnet/roslyn/issues/33564
[WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")]
[WorkItem(849836, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/849836")]
[Fact]
public void TestLiteralToStringDifferentCulture()
{
var culture = CultureInfo.CurrentCulture;
......
......@@ -179,7 +179,8 @@ End Module
End Sub
<Fact()>
<ConditionalFact(GetType(WindowsDesktopOnly), Reason:="https://github.com/dotnet/roslyn/issues/33564")> ' PROTOTYPE(DefaultInterfaceImplementation) https://github.com/dotnet/roslyn/issues/33564
<WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")>
Public Sub TestDoubleConstLocal()
Dim verifier = CompileAndVerify(
<compilation>
......
......@@ -326,7 +326,8 @@ End Class
End Sub
<Fact>
<ConditionalFact(GetType(WindowsDesktopOnly), Reason:="https://github.com/dotnet/roslyn/issues/33564")> ' PROTOTYPE(DefaultInterfaceImplementation) https://github.com/dotnet/roslyn/issues/33564
<WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")>
Public Sub ForLoopStepIsFloatNegativeVar()
Dim TEMP = CompileAndVerify(
<compilation>
......
......@@ -5262,8 +5262,9 @@ End Class
]]>)
End Sub
<ConditionalFact(GetType(WindowsDesktopOnly), Reason:="https://github.com/dotnet/roslyn/issues/33564")> ' PROTOTYPE(DefaultInterfaceImplementation) https://github.com/dotnet/roslyn/issues/33564
<WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")>
<WorkItem(529849, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/529849")>
<Fact>
Public Sub ArrayWithTypeCharsWithStaticLocals()
CompileAndVerify(
<compilation>
......@@ -13820,7 +13821,9 @@ End Module
]]>)
End Sub
<Fact, WorkItem(7148, "https://github.com/dotnet/roslyn/issues/7148")>
<ConditionalFact(GetType(WindowsDesktopOnly), Reason:="https://github.com/dotnet/roslyn/issues/33564")> ' PROTOTYPE(DefaultInterfaceImplementation) https://github.com/dotnet/roslyn/issues/33564
<WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")>
<WorkItem(7148, "https://github.com/dotnet/roslyn/issues/7148")>
Public Sub Issue7148_1()
Dim c = CompileAndVerify(
<compilation>
......@@ -13864,7 +13867,9 @@ End Class
]]>)
End Sub
<Fact, WorkItem(7148, "https://github.com/dotnet/roslyn/issues/7148")>
<ConditionalFact(GetType(WindowsDesktopOnly), Reason:="https://github.com/dotnet/roslyn/issues/33564")> ' PROTOTYPE(DefaultInterfaceImplementation) https://github.com/dotnet/roslyn/issues/33564
<WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")>
<WorkItem(7148, "https://github.com/dotnet/roslyn/issues/7148")>
Public Sub Issue7148_2()
Dim c = CompileAndVerify(
<compilation>
......
......@@ -142,8 +142,10 @@ class C
End Sub
#End If
' PROTOTYPE(DefaultInterfaceImplementation): Was <ConditionalFact(GetType(WindowsOnly), Reason:=ConditionalSkipReason.NativePdbRequiresDesktop)>
<ConditionalFact(GetType(WindowsDesktopOnly), Reason:="https://github.com/dotnet/roslyn/issues/33564")> ' PROTOTYPE(DefaultInterfaceImplementation) https://github.com/dotnet/roslyn/issues/33564
<WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")>
<WorkItem(529101, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/529101")>
<ConditionalFact(GetType(WindowsOnly), Reason:=ConditionalSkipReason.NativePdbRequiresDesktop)>
Public Sub TestLocalConstantsTypes()
Dim source = <compilation>
<file>
......
......@@ -16,7 +16,8 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.UnitTests.Semantics
Public Class UnaryOperators
Inherits BasicTestBase
<Fact>
<ConditionalFact(GetType(WindowsDesktopOnly), Reason:="https://github.com/dotnet/roslyn/issues/33564")> ' PROTOTYPE(DefaultInterfaceImplementation) https://github.com/dotnet/roslyn/issues/33564
<WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")>
Public Sub Test1()
Dim source =
......
......@@ -42,7 +42,8 @@ Namespace Microsoft.CodeAnalysis.VisualBasic.UnitTests
Assert.Equal(expected, node.ToFullString())
End Sub
<Fact>
<ConditionalFact(GetType(WindowsDesktopOnly), Reason:="https://github.com/dotnet/roslyn/issues/33564")> ' PROTOTYPE(DefaultInterfaceImplementation) https://github.com/dotnet/roslyn/issues/33564
<WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")>
<WorkItem(720708, "http://vstfdevdiv:8080/DevDiv2/DevDiv/_workitems/edit/720708")>
Public Sub TestLiteralDefaultStringValues()
......
......@@ -169,7 +169,9 @@ > Math.PI
>", runner.Console.Out.ToString());
}
[ConditionalFact(typeof(ClrOnly), Reason = "https://github.com/dotnet/roslyn/issues/30924")]
[ConditionalFact(typeof(WindowsDesktopOnly), Reason = "https://github.com/dotnet/roslyn/issues/33564")] // PROTOTYPE(DefaultInterfaceImplementation): https://github.com/dotnet/roslyn/issues/33564
// PROTOTYPE(DefaultInterfaceImplementation): Was [ConditionalFact(typeof(ClrOnly), Reason = "https://github.com/dotnet/roslyn/issues/30924")]
[WorkItem(33564, "https://github.com/dotnet/roslyn/issues/33564")]
[WorkItem(7133, "http://github.com/dotnet/roslyn/issues/7133")]
public void TestDisplayResultsWithCurrentUICulture2()
{
......
......@@ -13,7 +13,12 @@
<SelfContained>true</SelfContained>
<!-- Do not build again when publishing -->
<!--
PROTOTYPE(DefaultInterfaceImplementation): commented out NoBuild property to work around a build error:
roslyn\.dotnet\sdk\3.0.100-preview4-010391\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.targets(112,5): error NETSDK1085: The 'NoBuild' property was set to true but the 'Build' target was invoked. [roslyn\src\Tools\ILAsm\IlAsmDeploy.csproj]
<NoBuild>true</NoBuild>
-->
<PublishDir>$(ArtifactsDir)tools\ILAsm\$(Configuration)\</PublishDir>
</PropertyGroup>
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册