dotnet/roslyn

"Remove redundant assignment" should remove extra blank lines between assignment and trivia

Open

#33,313 opened on Feb 12, 2019

 (0 comments) (0 reactions) (0 assignees)C# (4,257 forks)batch import
Area-IDEBugIDE-CodeStylehelp wanted

Repository metrics

Stars
 (20,414 stars)
PR merge metrics
 (Avg merge 6d 17h) (256 merged PRs in 30d)

Description

"Remove redundant assignment" already removes extra blank lines between assignment and any additional code, so the following:

        static void Main(string[] args)
        {
            string foo = null;

			Console.WriteLine();

            foo = new string('A', 10);

            Console.WriteLine(foo);
        }

Will be (correctly) collapsed to:

        static void Main(string[] args)
        {
			Console.WriteLine();

            string foo = new string('A', 10);

            Console.WriteLine(foo);
        }

However, if its trivia, this doesn't occur:

        static void Main(string[] args)
        {
            string foo = null;

            // This is a comment

            foo = new string('A', 10);

            Console.WriteLine(foo);
        }

Gets changed to:

        static void Main(string[] args)
        {

            // This is a comment

            string foo = new string('A', 10);

            Console.WriteLine(foo);
        }

Hit this in this giant code review: https://devdiv.visualstudio.com/DevDiv/_git/CPS/pullrequest/163613?_a=overview.

Contributor guide