diff options
Diffstat (limited to 'src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ShadowConcreteMethodNode.cs')
-rw-r--r-- | src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ShadowConcreteMethodNode.cs | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ShadowConcreteMethodNode.cs b/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ShadowConcreteMethodNode.cs index 40d7cc978..5f1eef5b8 100644 --- a/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ShadowConcreteMethodNode.cs +++ b/src/ILCompiler.Compiler/src/Compiler/DependencyAnalysis/ShadowConcreteMethodNode.cs @@ -20,7 +20,7 @@ namespace ILCompiler.DependencyAnalysis /// method body, as if it was generated. The node acts as a symbol for the canonical /// method for convenience. /// </summary> - public class ShadowConcreteMethodNode : DependencyNodeCore<NodeFactory>, IMethodNode + public class ShadowConcreteMethodNode : DependencyNodeCore<NodeFactory>, IMethodNode, ISymbolNodeWithLinkage { /// <summary> /// Gets the canonical method body that defines the dependencies of this node. @@ -53,6 +53,11 @@ namespace ILCompiler.DependencyAnalysis CanonicalMethodNode = canonicalMethod; } + public ISymbolNode NodeForLinkage(NodeFactory factory) + { + return CanonicalMethodNode; + } + public override IEnumerable<DependencyListEntry> GetStaticDependencies(NodeFactory factory) { DependencyList dependencies = new DependencyList(); @@ -99,9 +104,9 @@ namespace ILCompiler.DependencyAnalysis public sealed override IEnumerable<CombinedDependencyListEntry> SearchDynamicDependencies(List<DependencyNodeCore<NodeFactory>> markedNodes, int firstNode, NodeFactory factory) => null; public sealed override IEnumerable<CombinedDependencyListEntry> GetConditionalStaticDependencies(NodeFactory factory) => null; - int ISortableSymbolNode.ClassCode => -1440570971; + int ISortableNode.ClassCode => -1440570971; - int ISortableSymbolNode.CompareToImpl(ISortableSymbolNode other, CompilerComparer comparer) + int ISortableNode.CompareToImpl(ISortableNode other, CompilerComparer comparer) { var compare = comparer.Compare(Method, ((ShadowConcreteMethodNode)other).Method); if (compare != 0) |