Area: Debuggabilityhelp wantedtriaged
倉庫指標
- Star
- (5,062 star)
- PR 合併指標
- (平均合併 11天 7小時) (30 天內合併 125 個 PR)
描述
There's a great deal of logic in ExecuteInstantiatedTask designed to handle exceptions thrown by tasks: https://github.com/Microsoft/msbuild/blob/4b30fac51ab58dadfffedb2a57e83b8398e3a5e1/src/XMakeBuildEngine/BackEnd/Components/RequestBuilder/TaskBuilder.cs#L720
Included in a lot of that logic is "rethrow wrapped to preserve stack", which was required in C# before C# 6. But now we have exception filters, which could simplify this logic and preserve stacks for free.
This is an important part of failure handling, so we'd need to make sure the right behavior from the existing logic is preserved.