24 references to IsRuntimeFinalizer
Microsoft.CodeAnalysis.CSharp (4)
Binder\Binder_Conversions.cs (1)
1634
Debug.Assert(!method.
IsRuntimeFinalizer
());
Binder\Binder_Invocation.cs (1)
1334
if (method.
IsRuntimeFinalizer
())
Symbols\Metadata\PE\PEMethodSymbol.cs (1)
1311
if ((this.ContainingType.TypeKind == TypeKind.Class && this.
IsRuntimeFinalizer
(skipFirstMethodKindCheck: true)) ||
Symbols\Source\SourceMemberContainerSymbol_ImplementationChecks.cs (1)
1025
else if (overriddenMethod.
IsRuntimeFinalizer
())
Microsoft.CodeAnalysis.CSharp.Emit.UnitTests (20)
CodeGen\DestructorTests.cs (20)
588
Assert.True(systemNamespace.GetMember<NamedTypeSymbol>("Object").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
590
Assert.True(globalNamespace.GetMember<NamedTypeSymbol>("A").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
591
Assert.False(globalNamespace.GetMember<NamedTypeSymbol>("B").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
592
Assert.False(globalNamespace.GetMember<NamedTypeSymbol>("C").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
593
Assert.False(globalNamespace.GetMember<NamedTypeSymbol>("D").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
594
Assert.False(globalNamespace.GetMember<NamedTypeSymbol>("E").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
595
Assert.False(globalNamespace.GetMember<NamedTypeSymbol>("F").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
596
Assert.False(globalNamespace.GetMember<NamedTypeSymbol>("G").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
597
Assert.True(globalNamespace.GetMember<NamedTypeSymbol>("H").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
598
Assert.False(globalNamespace.GetMember<NamedTypeSymbol>("I").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
604
Assert.False(classJ.GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
606
Assert.False(classJInt.GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
609
Assert.True(classK.GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
611
Assert.True(classKInt.GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
614
Assert.True(classL.GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
616
Assert.True(classLInt.GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
619
Assert.True(classM.GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
621
Assert.True(classMInt.GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
());
673
Assert.True(globalNamespace.GetMember<NamedTypeSymbol>("C").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
()); //override of object.Finalize
674
Assert.False(globalNamespace.GetMember<NamedTypeSymbol>("D").GetMember<MethodSymbol>("Finalize").
IsRuntimeFinalizer
()); //same but has "newslot"