Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
109 changes: 0 additions & 109 deletions src/coreclr/tools/Common/JitInterface/AsyncMethodDesc.cs

This file was deleted.

24 changes: 0 additions & 24 deletions src/coreclr/tools/Common/JitInterface/AsyncMethodDescFactory.cs

This file was deleted.

103 changes: 103 additions & 0 deletions src/coreclr/tools/Common/TypeSystem/Common/AsyncMethodThunk.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,103 @@
// Licensed to the .NET Foundation under one or more agreements.
// The .NET Foundation licenses this file to you under the MIT license.

using System;
using System.Collections.Concurrent;
using System.Collections.Generic;
using System.Diagnostics;
using Internal.TypeSystem;

namespace Internal.TypeSystem
{
/// <summary>
/// Represents the async-callable (CORINFO_CALLCONV_ASYNCCALL) variant of a Task/ValueTask returning method.
/// </summary>
public sealed class AsyncMethodThunk : MethodDelegator
{
private readonly AsyncMethodData _asyncMethodData;

public AsyncMethodThunk(MethodDesc wrappedMethod)
: base(wrappedMethod)
{
Debug.Assert(wrappedMethod.IsTaskReturning);
Debug.Assert(!wrappedMethod.IsAsync);
_asyncMethodData = new AsyncMethodData()
{
Kind = AsyncMethodKind.AsyncVariantThunk,
Signature = _wrappedMethod.Signature.CreateAsyncSignature()
};
}

public override AsyncMethodData AsyncMethodData
{
get
{
return _asyncMethodData;
}
}

public override MethodDesc GetCanonMethodTarget(CanonicalFormKind kind)
{
return _wrappedMethod.GetCanonMethodTarget(kind).GetAsyncOtherVariant();
}

public override MethodDesc GetMethodDefinition()
{
return _wrappedMethod.GetMethodDefinition();
}

public override MethodDesc GetTypicalMethodDefinition()
{
return _wrappedMethod.GetTypicalMethodDefinition();
}

public override MethodDesc GetAsyncOtherVariant()
{
return _wrappedMethod;
}

public override MethodDesc InstantiateSignature(Instantiation typeInstantiation, Instantiation methodInstantiation)
{
MethodDesc real = _wrappedMethod.InstantiateSignature(typeInstantiation, methodInstantiation);
return real.GetAsyncOtherVariant();
}

public override MethodSignature Signature
{
get
{
return _asyncMethodData.Signature;
}
}

public override string DiagnosticName
{
get
{
return "Async thunk: " + _wrappedMethod.DiagnosticName;
}
}

protected internal override int ClassCode
{
get
{
return 0x554d08b9;
}
}

protected internal override int CompareToImpl(MethodDesc other, TypeSystemComparer comparer)
{
if (other is AsyncMethodThunk otherAsync)
{
return comparer.Compare(_wrappedMethod, otherAsync._wrappedMethod);
}
return -1;
}

public override string ToString()
{
return "Async thunk: " + _wrappedMethod.ToString();
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@

using System;
using System.Diagnostics;
using System.Threading;
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are the changes in this file still needed?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nope, shouldn't be needed

using Internal.NativeFormat;

namespace Internal.TypeSystem
Expand All @@ -13,6 +14,8 @@
private Instantiation _instantiation;

private MethodSignature _signature;
private AsyncMethodData _asyncMethodData;
private MethodDesc _asyncOtherVariant;

internal InstantiatedMethod(MethodDesc methodDef, Instantiation instantiation)
{
Expand Down Expand Up @@ -58,26 +61,73 @@
return type.InstantiateSignature(default(Instantiation), _instantiation);
}

private void InitializeSignature()
{
var template = _methodDef.Signature;
_signature = InstantiateSignature(template);
}

private MethodSignature InstantiateSignature(MethodSignature template)
{
var builder = new MethodSignatureBuilder(template);
builder.ReturnType = Instantiate(template.ReturnType);
for (int i = 0; i < template.Length; i++)
builder[i] = Instantiate(template[i]);
return builder.ToSignature();
}

public override MethodSignature Signature
{
get
{
if (_signature == null)
{
MethodSignature template = _methodDef.Signature;
MethodSignatureBuilder builder = new MethodSignatureBuilder(template);
InitializeSignature();

return _signature;
}
}

builder.ReturnType = Instantiate(template.ReturnType);
for (int i = 0; i < template.Length; i++)
builder[i] = Instantiate(template[i]);
public override AsyncMethodData AsyncMethodData
{
get
{
if (!_asyncMethodData.Equals(default(AsyncMethodData)))
return _asyncMethodData;

_signature = builder.ToSignature();
if (Signature.ReturnsTaskOrValueTask())
{
if (IsAsync)
{
// If the method is already async, the template signature should already have been updated to reflect the AsyncCallConv
Debug.Assert(!Signature.ReturnsTaskOrValueTask() && Signature.IsAsyncCallConv);
_asyncMethodData = new AsyncMethodData() { Kind = AsyncMethodKind.AsyncVariantImpl, Signature = Signature };
}
else
{
_asyncMethodData = new AsyncMethodData() { Kind = AsyncMethodKind.TaskReturning, Signature = Signature };
}
}
else
{
_asyncMethodData = new AsyncMethodData() { Kind = AsyncMethodKind.NotAsync, Signature = Signature };
}

return _signature;
return _asyncMethodData;
}
}

public override MethodDesc GetAsyncOtherVariant()
{
if (_asyncOtherVariant is null)
{
MethodDesc otherVariant = IsAsync ?
new TaskReturningAsyncThunk(this, InstantiateSignature(_methodDef.GetAsyncOtherVariant().Signature))

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 Debug NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build osx-x64 Release NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm64 Release NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm64 Release NativeAOT_Libraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 Release NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm Debug AllSubsets_CoreCLR_ReleaseRuntimeLibs)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-arm Debug AllSubsets_CoreCLR_ReleaseRuntimeLibs)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 checked CLR_Tools_Tests)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-armel checked CoreCLR_NonPortable)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build android-x64 Release AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build android-arm64 Release AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-arm checked CoreCLR_ReleaseLibraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm checked CoreCLR_ReleaseLibraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm64 Debug AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build ios-arm64 Release AllSubsets_NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-arm64 Debug AllSubsets_CoreCLR_ReleaseRuntimeLibs)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-x64 Debug AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build osx-x64 Debug Libraries_CheckedCoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-x64 Debug CoreCLR_Libraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build osx-arm64 Release NativeAOT_Libraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 Debug CoreCLR_Libraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / dotnet-linker-tests (Build linux-x64 release Runtime_Release)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 checked CoreCLR_ReleaseLibraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-arm64 checked CoreCLR_ReleaseLibraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 Debug Libraries_CheckedCoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build browser-wasm linux Debug AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-x64 Debug Libraries_CheckedCoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm64 Debug Libraries_CheckedCoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build tvos-arm64 Release AllSubsets_NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / dotnet-linker-tests (Build osx-x64 release Runtime_Release)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 124 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / dotnet-linker-tests

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L124

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(124,25): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'TaskReturningAsyncThunk' could not be found (are you missing a using directive or an assembly reference?)
: new AsyncMethodThunk(this);

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 Debug NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build osx-x64 Release NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm64 Release NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm64 Release NativeAOT_Libraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 Release NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm Debug AllSubsets_CoreCLR_ReleaseRuntimeLibs)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-arm Debug AllSubsets_CoreCLR_ReleaseRuntimeLibs)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 checked CLR_Tools_Tests)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-armel checked CoreCLR_NonPortable)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build android-x64 Release AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build android-arm64 Release AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-arm checked CoreCLR_ReleaseLibraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm checked CoreCLR_ReleaseLibraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm64 Debug AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build ios-arm64 Release AllSubsets_NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-arm64 Debug AllSubsets_CoreCLR_ReleaseRuntimeLibs)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-x64 Debug AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-x64 Debug CoreCLR_Libraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build osx-arm64 Release NativeAOT_Libraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 Debug CoreCLR_Libraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / dotnet-linker-tests (Build linux-x64 release Runtime_Release)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 checked CoreCLR_ReleaseLibraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-arm64 checked CoreCLR_ReleaseLibraries)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-x64 Debug Libraries_CheckedCoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build browser-wasm linux Debug AllSubsets_CoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux_musl-x64 Debug Libraries_CheckedCoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build linux-arm64 Debug Libraries_CheckedCoreCLR)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / runtime (Build tvos-arm64 Release AllSubsets_NativeAOT)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / dotnet-linker-tests (Build osx-x64 release Runtime_Release)

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)

Check failure on line 125 in src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs

View check run for this annotation

Azure Pipelines / dotnet-linker-tests

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs#L125

src/coreclr/tools/Common/TypeSystem/Common/InstantiatedMethod.cs(125,27): error CS0246: (NETCORE_ENGINEERING_TELEMETRY=Build) The type or namespace name 'AsyncMethodThunk' could not be found (are you missing a using directive or an assembly reference?)
Interlocked.CompareExchange(ref _asyncOtherVariant, otherVariant, null);
}
return _asyncOtherVariant;
}

public override Instantiation Instantiation
{
get
Expand Down Expand Up @@ -134,7 +184,6 @@
}
}


public override bool HasCustomAttribute(string attributeNamespace, string attributeName)
{
return _methodDef.HasCustomAttribute(attributeNamespace, attributeName);
Expand Down
2 changes: 2 additions & 0 deletions src/coreclr/tools/Common/TypeSystem/Common/MethodDelegator.cs
Original file line number Diff line number Diff line change
Expand Up @@ -53,5 +53,7 @@ public override bool HasCustomAttribute(string attributeNamespace, string attrib

// For this method, delegating to the wrapped MethodDesc would likely be the wrong thing.
public abstract override MethodDesc InstantiateSignature(Instantiation typeInstantiation, Instantiation methodInstantiation);

public abstract override AsyncMethodData AsyncMethodData { get; }
}
}
Loading
Loading