dotnet/roslyn

```await``` completion should trigger on ```yield``` in IAsyncEnumerables

Offen

#75.675 geöffnet am 30.10.2024

 (4 Kommentare) (3 Reaktionen) (0 zugewiesene Personen)C# (4.257 Forks)batch import
help wanted

Repository-Metriken

Stars
 (20.414 Sterne)
PR-Merge-Metriken
 (PR-Metriken ausstehend)

Beschreibung

Version Used: 17.11.5 Steps to Reproduce:

  1. Start with this code:
namespace ConsoleApp44 {
    internal class Program {
        
        public static Task Test1() {

        }

        public static IAsyncEnumerable<int> Test2() {
        
        }

    }
}
  1. Place your cursor inside Test1 and type await. The method changes to async. This is good. Image

  2. Now, place your cursor inside of test2 and type yield. The method does NOT change to async. This is bad. Image

Expected Behavior: An IAsyncEnumerable can only yield if it is async. Therefore, the same completion should trigger as when you do an await.

Actual Behavior: Nothing happens. I have to manually update the method signature.

Contributor Guide