dotnet/roslyn

IDE0059 is triggered for recurrent lambda initialization

Open

#48,622 opened on Oct 15, 2020

View on GitHub
 (0 comments) (0 reactions) (1 assignee)C# (20,414 stars) (4,257 forks)batch import
Area-AnalyzersBugFeature - IDE0059help wanted

Description

Version Used: VS 16.9.0 Preview 1.0 [30609.169.main]

Steps to Reproduce:

using System;

namespace TestNamespace
{
    public class TestClass
    {
        public void TestMethod()
        {
            Func<string, string> func = null;
            func = s =>
            {
                // When initialization above is removed, this line results in an error:
                // Use of unassigned local variable 'func'
                return func(s);
            };
        }
    }
}

Expected Behavior: IDE0059 should not be triggered for func.

Actual Behavior: IDE0059 is triggered for func but when initialization to null is removed, compiler raises error:

Use of unassigned local variable 'func'

For the return func(s); line.

Contributor guide