Skip to content

ILLink.RoslynAnalyzer asserts on tuple swap involving implicit indexer reference #117122

Open
@tannergooding

Description

@tannergooding

The following code:

scoped Span<nint> lengths = TensorOperation.RentedBuffer.CreateUninitialized(tensor.Rank, out TensorOperation.RentedBuffer<nint> lengthsRentedBuffer);
scoped Span<nint> strides = TensorOperation.RentedBuffer.CreateUninitialized(tensor.Rank, out TensorOperation.RentedBuffer<nint> stridesRentedBuffer);

tensor.Lengths.CopyTo(lengths);
tensor.Strides.CopyTo(strides);

(lengths[^1], lengths[^2]) = (lengths[^2], lengths[^1]);
(strides[^1], strides[^2]) = (strides[^2], strides[^1]);

Raises an assert in the ILLink.RoslynAnalyzer. It is encountered on one of the lengths[^1] nodes in the tuple swap pattern:

Process terminated. 
Assertion failed. 
   at ILLink.RoslynAnalyzer.DataFlow.LocalDataFlowVisitor`5.VisitImplicitIndexerReference(IImplicitIndexerReferenceOperation operation, LocalDataFlowState`4 state) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/LocalDataFlowVisitor.cs:line 636 
   at ILLink.RoslynAnalyzer.DataFlow.OperationWalker`2.Visit(IOperation operation, TArgument argument) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/OperationWalker.cs:line 22 
   at ILLink.RoslynAnalyzer.DataFlow.OperationWalker`2.VisitChildOperations(IOperation operation, TArgument argument) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/OperationWalker.cs:line 17 
   at ILLink.RoslynAnalyzer.TrimAnalysis.TrimAnalysisVisitor.DefaultVisit(IOperation operation, LocalDataFlowState`4 argument) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/TrimAnalysis/TrimAnalysisVisitor.cs:line 80 
   at ILLink.RoslynAnalyzer.DataFlow.OperationWalker`2.Visit(IOperation operation, TArgument argument) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/OperationWalker.cs:line 22 
   at ILLink.RoslynAnalyzer.DataFlow.OperationWalker`2.VisitChildOperations(IOperation operation, TArgument argument) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/OperationWalker.cs:line 17 
   at ILLink.RoslynAnalyzer.TrimAnalysis.TrimAnalysisVisitor.DefaultVisit(IOperation operation, LocalDataFlowState`4 argument) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/TrimAnalysis/TrimAnalysisVisitor.cs:line 80 
   at ILLink.RoslynAnalyzer.DataFlow.OperationWalker`2.Visit(IOperation operation, TArgument argument) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/OperationWalker.cs:line 22 
   at ILLink.RoslynAnalyzer.DataFlow.LocalDataFlowVisitor`5.VisitExpressionStatement(IExpressionStatementOperation operation, LocalDataFlowState`4 state) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/LocalDataFlowVisitor.cs:line 548 
   at ILLink.RoslynAnalyzer.DataFlow.OperationWalker`2.Visit(IOperation operation, TArgument argument) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/OperationWalker.cs:line 22 
   at ILLink.RoslynAnalyzer.DataFlow.LocalDataFlowVisitor`5.Transfer(BlockProxy block, LocalDataFlowState`4 state) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/LocalDataFlowVisitor.cs:line 83 
   at ILLink.Shared.DataFlow.ForwardDataFlowAnalysis`8.TransferOut(TTransfer transfer, TControlFlowGraph cfg, TBlock block, TState state, Action`2 updateState) in /_/src/tools/illink/src/ILLink.Shared/DataFlow/ForwardDataFlowAnalysis.cs:line 189 
   at ILLink.Shared.DataFlow.ForwardDataFlowAnalysis`8.Fixpoint(TControlFlowGraph cfg, TTransfer transfer) 
   at ILLink.RoslynAnalyzer.DataFlow.LocalDataFlowAnalysis`6.AnalyzeMethod(MethodBodyValue method, InterproceduralState`2& interproceduralState) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/LocalDataFlowAnalysis.cs:line 109 
   at ILLink.RoslynAnalyzer.DataFlow.LocalDataFlowAnalysis`6.InterproceduralAnalyze() in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DataFlow/LocalDataFlowAnalysis.cs:line 91 
   at ILLink.RoslynAnalyzer.DynamicallyAccessedMembersAnalyzer.<>c__DisplayClass13_0.<Initialize>b__1(OperationBlockAnalysisContext context) in /_/src/tools/illink/src/ILLink.RoslynAnalyzer/DynamicallyAccessedMembersAnalyzer.cs:line 105 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerExecutor.<>c.<ExecuteOperationBlockActions>b__56_4(ValueTuple`2 data) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerExecutor.ExecuteAndCatchIfThrows_NoLock[TArg](DiagnosticAnalyzer analyzer, Action`1 analyze, TArg argument, Nullable`1 info, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerExecutor.ExecuteAndCatchIfThrows[TArg](DiagnosticAnalyzer analyzer, Action`1 analyze, TArg argument, Nullable`1 contextInfo, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerExecutor.<>c.<ExecuteOperationBlockActions>b__56_2(HashSet`1 blockActions, AnalyzerDiagnosticReporter diagReporter, Func`3 isSupportedDiagnostic, ExecutionData executionData, ValueTuple`6 args, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerExecutor.ExecuteBlockActionsCore[TBlockStartAction,TBlockAction,TArgs](ImmutableArray`1 startActions, ImmutableArray`1 actions, ImmutableArray`1 endActions, SyntaxNode declaredNode, ExecutionData executionData, Action`5 addActions, Action`5 executeActions, Action`6 executeBlockActions, TArgs argument, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerExecutor.ExecuteOperationBlockActions(ImmutableArray`1 startActions, ImmutableArray`1 actions, ImmutableArray`1 endActions, DiagnosticAnalyzer analyzer, SyntaxNode declaredNode, ISymbol declaredSymbol, ImmutableArray`1 operationBlocks, ImmutableArray`1 operations, SemanticModel semanticModel, Nullable`1 filterSpan, Boolean isGeneratedCode, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver`1.<>c__DisplayClass11_0.<ExecuteDeclaringReferenceActions>g__executeOperationsBlockActions|6(ImmutableArray`1 operationBlocksToAnalyze, ImmutableArray`1 operationsToAnalyze, ArrayBuilder`1 codeBlockActions) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver`1.<>c__DisplayClass11_0.<ExecuteDeclaringReferenceActions>g__executeExecutableCodeActions|2() 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver`1.ExecuteDeclaringReferenceActions(SyntaxReference decl, SymbolDeclaredCompilationEvent symbolEvent, AnalysisScope analysisScope, GroupedAnalyzerActions coreActions, GroupedAnalyzerActions additionalPerSymbolActions, Boolean shouldExecuteSyntaxNodeActions, Boolean shouldExecuteOperationActions, Boolean shouldExecuteCodeBlockActions, Boolean shouldExecuteOperationBlockActions, Boolean isInGeneratedCode, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver`1.ExecuteDeclaringReferenceActions(SymbolDeclaredCompilationEvent symbolEvent, AnalysisScope analysisScope, Boolean isGeneratedCodeSymbol, IGroupedAnalyzerActions additionalPerSymbolActions, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.TryProcessSymbolDeclaredAsync(SymbolDeclaredCompilationEvent symbolEvent, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.TryProcessSymbolDeclaredAsync(SymbolDeclaredCompilationEvent symbolEvent, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.TryProcessEventCoreAsync(CompilationEvent compilationEvent, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.TryProcessEventCoreAsync(CompilationEvent compilationEvent, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.ProcessEventAsync(CompilationEvent e, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncMethodBuilderCore.Start[TStateMachine](TStateMachine& stateMachine) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.ProcessEventAsync(CompilationEvent e, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.ProcessCompilationEventsCoreAsync(AnalysisScope analysisScope, Boolean prePopulatedEventQueue, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.ProcessEventAsync(CompilationEvent e, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.TryProcessEventCoreAsync(CompilationEvent compilationEvent, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.TryProcessSymbolDeclaredAsync(SymbolDeclaredCompilationEvent symbolEvent, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.GetPerSymbolAnalyzerActionsAsync(ISymbol symbol, AnalysisScope analysisScope, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.GetPerSymbolAnalyzerActionsAsync(ISymbol symbol, DiagnosticAnalyzer analyzer, SyntaxTree filterTree, Nullable`1 filterSpan, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.<GetPerSymbolAnalyzerActionsAsync>g__getAllActionsAsync|153_0(AnalyzerDriver driver, ISymbol symbol, DiagnosticAnalyzer analyzer, SyntaxTree filterTree, Nullable`1 filterSpan, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetResult(TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerDriver.<GetPerSymbolAnalyzerActionsAsync>g__getSymbolActionsCoreAsync|153_2(AnalyzerDriver driver, ISymbol symbol, DiagnosticAnalyzer analyzer, SyntaxTree filterTree, Nullable`1 filterSpan, CancellationToken cancellationToken)
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at System.Runtime.CompilerServices.AsyncValueTaskMethodBuilder`1.SetResult(TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerManager.GetPerSymbolAnalyzerActionsAsync(ISymbol symbol, Boolean isGeneratedCodeSymbol, SyntaxTree filterTree, Nullable`1 filterSpan, DiagnosticAnalyzer analyzer, AnalyzerExecutor analyzerExecutor, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerManager.GetSymbolAnalysisScopeAsync(ISymbol symbol, Boolean isGeneratedCodeSymbol, SyntaxTree filterTree, Nullable`1 filterSpan, DiagnosticAnalyzer analyzer, ImmutableArray`1 symbolStartActions, AnalyzerExecutor analyzerExecutor, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task`1.TrySetResult(TResult result) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(Task`1 task, TResult result) 
   at Microsoft.CodeAnalysis.Diagnostics.AnalyzerManager.GetSymbolAnalysisScopeCoreAsync(ISymbol symbol, Boolean isGeneratedCodeSymbol, SyntaxTree filterTree, Nullable`1 filterSpan, ImmutableArray`1 symbolStartActions, AnalyzerExecutor analyzerExecutor, AnalyzerExecutionContext analyzerExecutionContext, CancellationToken cancellationToken) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.ExecutionContextCallback(Object s) 
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext(Thread threadPoolThread) 
   at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext() 
   at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining) 
   at System.Threading.Tasks.Task.RunContinuations(Object continuationObject) 
   at System.Threading.Tasks.Task.FinishSlow(Boolean userDelegateExecute) 
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread) 
   at System.Threading.ThreadPoolWorkQueue.Dispatch() 
   at System.Threading.PortableThreadPool.WorkerThread.WorkerThreadStart() 
   at System.Threading.Thread.StartCallback() 

Metadata

Metadata

Assignees

No one assigned

    Labels

    area-Tools-ILLink.NET linker development as well as trimming analyzersuntriagedNew issue has not been triaged by the area owner

    Type

    No type

    Projects

    Status

    No status

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions