diff --git a/src/.nuget/packages.config b/src/.nuget/packages.config index 12e394bff8eca0f2fa51da3ad0f5e87e4339aa86..811f6a6763bf282346c4ff84f2f18948731dc409 100644 --- a/src/.nuget/packages.config +++ b/src/.nuget/packages.config @@ -1,7 +1,7 @@  - - + + diff --git a/src/EditorFeatures/CSharpTest/EditAndContinue/RudeEditTopLevelTests.cs b/src/EditorFeatures/CSharpTest/EditAndContinue/RudeEditTopLevelTests.cs index 6eb03852fc8e08ec4bd29175fba19fd8ecb2b2c9..ff6ce37a100863d8a47aab5af1de326e69d0dd9c 100644 --- a/src/EditorFeatures/CSharpTest/EditAndContinue/RudeEditTopLevelTests.cs +++ b/src/EditorFeatures/CSharpTest/EditAndContinue/RudeEditTopLevelTests.cs @@ -3136,6 +3136,42 @@ public void MethodUpdate_Iterator_YieldBreak() VerifyPreserveLocalVariables(edits, preserveLocalVariables: true); } + [WorkItem(1087305)] + [Fact] + public void MethodUpdate_LabeledStatement() + { + string src1 = @" +class C +{ + static void Main(string[] args) + { + goto Label1; + + Label1: + { + Console.WriteLine(1); + } + } +}"; + string src2 = @" +class C +{ + static void Main(string[] args) + { + goto Label1; + + Label1: + { + Console.WriteLine(2); + } + } +}"; + + var edits = GetTopEdits(src1, src2); + + edits.VerifyRudeDiagnostics(); + } + #endregion #region Operators diff --git a/src/Features/CSharp/EditAndContinue/StatementSyntaxComparer.cs b/src/Features/CSharp/EditAndContinue/StatementSyntaxComparer.cs index 8c944e05ed0bd4811aa135174b1b4f3c7e1400d8..52ab6cf11963703ffddc02024f2de8e5a2ab1431 100644 --- a/src/Features/CSharp/EditAndContinue/StatementSyntaxComparer.cs +++ b/src/Features/CSharp/EditAndContinue/StatementSyntaxComparer.cs @@ -767,6 +767,7 @@ private bool TryComputeWeightedDistance(BlockSyntax leftBlock, BlockSyntax right return true; case SyntaxKind.Block: + case SyntaxKind.LabeledStatement: distance = ComputeWeightedBlockDistance(leftBlock, rightBlock); return true; diff --git a/src/Tools/Microsoft.CodeAnalysis.Toolset.Open/Targets/VSL.Settings.targets b/src/Tools/Microsoft.CodeAnalysis.Toolset.Open/Targets/VSL.Settings.targets index 827acf609687248b6365f035a0b4dc28c856a89d..9b4965360bf3a1cc93dcec9cd1275f9e67affadf 100644 --- a/src/Tools/Microsoft.CodeAnalysis.Toolset.Open/Targets/VSL.Settings.targets +++ b/src/Tools/Microsoft.CodeAnalysis.Toolset.Open/Targets/VSL.Settings.targets @@ -54,8 +54,8 @@ Microsoft.Net.ToolsetCompilers - $(NuGetPackagesPath)\Microsoft.Net.ToolsetCompilers.1.0.0-rc2-20150319-05\build\Microsoft.Net.ToolsetCompilers.props - $(NuGetPackagesPath)\Microsoft.Net.RoslynDiagnostics.1.0.0-rc2-20150319-05\build\Microsoft.Net.RoslynDiagnostics.props + $(NuGetPackagesPath)\Microsoft.Net.ToolsetCompilers.1.0.0-rc2-20150413-02\build\Microsoft.Net.ToolsetCompilers.props + $(NuGetPackagesPath)\Microsoft.Net.RoslynDiagnostics.1.0.0-rc2-20150413-02\build\Microsoft.Net.RoslynDiagnostics.props $(AdditionalFileItemNames);PublicAPI