diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/MemberTypes.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/MemberTypes.cs index 588d56701e261a..9ac116330ac818 100644 --- a/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/MemberTypes.cs +++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/DataFlow/MemberTypes.cs @@ -305,6 +305,7 @@ public void HideMethod () { } [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEventOnBase; protected event EventHandler ProtectedEventOnBase; private event EventHandler PrivateEventOnBase; @@ -312,6 +313,7 @@ public void HideMethod () { } [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler HideEvent; [Kept] @@ -372,6 +374,7 @@ public void HideMethod () { } [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; protected event EventHandler ProtectedEvent; private event EventHandler PrivateEvent; @@ -379,6 +382,7 @@ public void HideMethod () { } [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler HideEvent; [Kept] @@ -440,6 +444,7 @@ public void HideMethod () { } [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] protected event EventHandler ProtectedEventOnBase; private event EventHandler PrivateEventOnBase; public event EventHandler HideEvent; @@ -496,11 +501,13 @@ public void HideMethod () { } [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] protected event EventHandler ProtectedEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] private event EventHandler PrivateEvent; public event EventHandler HideEvent; @@ -568,17 +575,20 @@ public void HideMethod () { } [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEventOnBase; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] protected event EventHandler ProtectedEventOnBase; private event EventHandler PrivateEventOnBase; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler HideEvent; [Kept] @@ -651,21 +661,25 @@ public void HideMethod () { } [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] protected event EventHandler ProtectedEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] private event EventHandler PrivateEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler HideEvent; [Kept] @@ -1377,6 +1391,7 @@ class PublicEventsBaseType [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEventOnBase; protected event EventHandler ProtectedEventOnBase; private event EventHandler PrivateEventOnBase; @@ -1384,6 +1399,7 @@ class PublicEventsBaseType [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler HideEvent; [Kept] @@ -1408,6 +1424,7 @@ class PublicEventsType : PublicEventsBaseType [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; protected event EventHandler ProtectedEvent; private event EventHandler PrivateEvent; @@ -1415,6 +1432,7 @@ class PublicEventsType : PublicEventsBaseType [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler HideEvent; [Kept] @@ -1448,6 +1466,7 @@ class NonPublicEventsBaseType [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] protected event EventHandler ProtectedEventOnBase; private event EventHandler PrivateEventOnBase; public event EventHandler HideEvent; @@ -1471,11 +1490,13 @@ class NonPublicEventsType : NonPublicEventsBaseType [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] protected event EventHandler ProtectedEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] private event EventHandler PrivateEvent; public event EventHandler HideEvent; @@ -1508,17 +1529,20 @@ class AllEventsBaseType [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEventOnBase; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] protected event EventHandler ProtectedEventOnBase; private event EventHandler PrivateEventOnBase; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler HideEvent; [Kept] @@ -1547,21 +1571,25 @@ class AllEventsType : AllEventsBaseType [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] + [method: ExpectLocalsModified] [method: ExpectBodyModified] protected event EventHandler ProtectedEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] private event EventHandler PrivateEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler HideEvent; [Kept] diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/DynamicDependencies/DynamicDependencyMemberTypes.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/DynamicDependencies/DynamicDependencyMemberTypes.cs index b44434f771a2e7..80c34a39ad858c 100644 --- a/src/tools/illink/test/Mono.Linker.Tests.Cases/DynamicDependencies/DynamicDependencyMemberTypes.cs +++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/DynamicDependencies/DynamicDependencyMemberTypes.cs @@ -211,6 +211,7 @@ class TypeWithPublicEvent [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; event EventHandler NonPublicEvent; @@ -224,6 +225,7 @@ class TypeWithNonPublicEvent [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] event EventHandler NonPublicEvent; public event EventHandler PublicEven; diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/EventUsedViaReflection.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/EventUsedViaReflection.cs index 4ba46b1187fdca..2611beed14a6be 100644 --- a/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/EventUsedViaReflection.cs +++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/EventUsedViaReflection.cs @@ -201,6 +201,7 @@ class Bar [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] private event EventHandler PrivateEvent; public event EventHandler PublicEvent; } @@ -211,6 +212,7 @@ class UnknownBindingFlags [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] internal event EventHandler InternalEvent; [Kept] [KeptBackingField] @@ -221,11 +223,13 @@ class UnknownBindingFlags [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] private event EventHandler PrivateEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; } @@ -235,6 +239,7 @@ class UnknownBindingFlagsAndName [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] internal event EventHandler InternalEvent; [Kept] [KeptBackingField] @@ -245,11 +250,13 @@ class UnknownBindingFlagsAndName [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] private event EventHandler PrivateEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; } @@ -259,11 +266,13 @@ class IfClass [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler IfEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler ElseEvent; } @@ -278,6 +287,7 @@ class ElseClass [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler IfEvent; } @@ -289,6 +299,7 @@ class BaseClass [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEventOnBase; } [KeptBaseType (typeof (BaseClass))] @@ -302,12 +313,14 @@ class IgnoreCaseBindingFlagsClass [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] private event EventHandler MarkedDueToIgnoreCaseEvent; } @@ -324,12 +337,14 @@ class PutRefDispPropertyBindingFlagsClass [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; [Kept] [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] private event EventHandler MarkedDueToPutRefDispPropertyEvent; } } diff --git a/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/RuntimeReflectionExtensionsCalls.cs b/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/RuntimeReflectionExtensionsCalls.cs index b440d3f4b963d0..20e6d05916efbf 100644 --- a/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/RuntimeReflectionExtensionsCalls.cs +++ b/src/tools/illink/test/Mono.Linker.Tests.Cases/Reflection/RuntimeReflectionExtensionsCalls.cs @@ -120,6 +120,7 @@ class ClassWithKeptMembers [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler PublicEvent; [Kept] @@ -195,6 +196,7 @@ class Base [KeptEventAddMethod] [KeptEventRemoveMethod] [method: ExpectBodyModified] + [method: ExpectLocalsModified] public event EventHandler Event; [Kept] diff --git a/src/tools/illink/test/Mono.Linker.Tests/TestCasesRunner/TestCaseCompilationMetadataProvider.cs b/src/tools/illink/test/Mono.Linker.Tests/TestCasesRunner/TestCaseCompilationMetadataProvider.cs index 15a4ac56de0baa..51099427106314 100644 --- a/src/tools/illink/test/Mono.Linker.Tests/TestCasesRunner/TestCaseCompilationMetadataProvider.cs +++ b/src/tools/illink/test/Mono.Linker.Tests/TestCasesRunner/TestCaseCompilationMetadataProvider.cs @@ -155,6 +155,7 @@ public virtual IEnumerable GetCommonReferencedAssemblies (NPath workingD yield return Path.Combine (referenceDir, "System.Runtime.dll"); yield return Path.Combine (referenceDir, "System.Runtime.Extensions.dll"); yield return Path.Combine (referenceDir, "System.Runtime.InteropServices.dll"); + yield return Path.Combine (referenceDir, "System.Threading.dll"); } else { yield return "mscorlib.dll"; }