A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/dotnet/fsharp/issues/5539 below:

Debugger should not break on f# (F sharp) exception in async blocks · Issue #5539 · dotnet/fsharp · GitHub

The following code causes the debugger to break when the exception is thrown. Clearly the exception is handled and so the debugger should not break.

If I continue execution the program continues to run normally; printing "oops" on the screen as expected.

[<EntryPoint>]
let main argv =
    async {
        try
            do! Async.Sleep(1)
            failwith "oops" // The debugger breaks here but it should not as the exception is handled. It should behave like the C# version
        with
        | ex -> printfn "%s" (ex.Message)
    }
    |> Async.RunSynchronously

    Console.ReadLine() |> ignore
    0 

Compare this with the equivalent C# code. This does not break when the exception is thrown. The F# version should behave the same way and not break!

using System;
using System.Threading.Tasks;

namespace CSharpTaskException
{
    class Program
    {
        static void Main(string[] args)
        {
            async Task DoSomething()
            {
                try
                {
                    await Task.Delay(1);
                    throw new Exception(&quot;oops&quot;); // ****** This does not cause the debugger to break as the exception is handled
                }
                catch(Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }

            DoSomething().Wait();

            Console.ReadLine();
        }
    }
}

This issue has been moved from https://developercommunity.visualstudio.com/content/problem/314461/debugger-should-not-break-on-f-f-sharp-exception-i.html
VSTS ticketId: 666263

These are the original issue comments:
(no comments)
These are the original issue solutions:
(no solutions)


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4