-
-
Notifications
You must be signed in to change notification settings - Fork 11
Open
Labels
Milestone
Description
The following snippet:
partial class PartialClass
{
public int Foo() => 42;
}
partial class PartialClass
{
public string Name { get; }
}results in a runtime exception in both APIs.
Mono.Cecil:
System.ApplicationException : Error: Unhandled exception. System.ArgumentException: Member already attached
at Mono.Cecil.MemberDefinitionCollection`1.Attach(T element)
at Mono.Cecil.MemberDefinitionCollection`1.OnAdd(T item, Int32 index)
at Mono.Collections.Generic.Collection`1.Add(T item)
at SnippetRunner.Main(String[] args) in :line 76
Executable: dotnet
Args: /tmp/CecilifierTests/Integration/PartialClassTest/Types/PartialClass/Runner-3D46021D4A53D88EC05E779F724B15643436E867.exe /tmp/CecilifierTests/Integration/PartialClassTest/Types/PartialClass/PartialClass-Cecilified-EED5168C5A9F20B5A52E5AB8AEF5DB527B767BA2000000000000000000000000.dll
at Cecilifier.Core.Tests.Framework.TestFramework.ExecuteWithOutput(String executable, String args) in /home/adriano/Projects/study/DotNet/Cecilifier/Cecilifier.Core.Tests/Framework/TestFramework.cs:line 57
at Cecilifier.Core.Tests.Framework.TestFramework.Execute(String executable, String args) in /home/adriano/Projects/study/DotNet/Cecilifier/Cecilifier.Core.Tests/Framework/TestFramework.cs:line 11
at Cecilifier.Core.Tests.Framework.CecilifierTestBase`1.CecilifyAndExecute(Stream tbc, String testBasePath) in /home/adriano/Projects/study/DotNet/Cecilifier/Cecilifier.Core.Tests/Framework/CecilifierTestBase.cs:line 161
at Cecilifier.Core.Tests.Framework.ResourceTestBase`1.AssertResourceTest(String testBasePath, String expectedAssemblyPath, CecilifyTestOptions options) in /home/adriano/Projects/study/DotNet/Cecilifier/Cecilifier.Core.Tests/Framework/ResourceTestBase.cs:line 86
at Cecilifier.Core.Tests.Framework.ResourceTestBase`1.AssertResourceTest(String resourceName, CecilifyTestOptions options) in /home/adriano/Projects/study/DotNet/Cecilifier/Cecilifier.Core.Tests/Framework/ResourceTestBase.cs:line 81
at Cecilifier.Core.Tests.Framework.ResourceTestBase`1.AssertResourceTest(String resourceName) in /home/adriano/Projects/study/DotNet/Cecilifier/Cecilifier.Core.Tests/Framework/ResourceTestBase.cs:line 15
at Cecilifier.Core.Tests.Integration.Types.TypesTestCase`1.PartialClassTest() in /home/adriano/Projects/study/DotNet/Cecilifier/Cecilifier.Core.Tests/Tests/Integration/Types/TypesTestCase.cs:line 103
at System.RuntimeMethodHandle.InvokeMethod(Object target, Void** arguments, Signature sig, Boolean isConstructor)
at System.Reflection.MethodBaseInvoker.InvokeWithNoArgs(Object obj, BindingFlags invokeAttr)
System.Reflection.Metadata:
JetBrains.ReSharper.TestRunner.Logging.TraceListener+AssertionException : !Unsafe.IsNullRef(ref declaringTypeRecord)
at JetBrains.ReSharper.TestRunner.Logging.TraceListener.Fail(String message, String detailMessage) in Z:\BuildAgent\work\1b668fe37ef92293\ReSharperTestRunner\src\TestRunner.Utilities\Logging\TraceListener.cs:line 33
at System.Diagnostics.TraceInternal.Fail(String message, String detailMessage)
at System.Diagnostics.Debug.Fail(String message, String detailMessage)
at Cecilifier.ApiDriver.SystemReflectionMetadata.DelayedDefinitions.DelayedDefinitionsManager.RegisterMethodDefinition(String declaringTypeVarName, Func`3 newMethodFunc) in /home/adriano/Projects/study/DotNet/Cecilifier/Cecilifier.ApiDriver.SystemReflectionMetadata/DelayedDefinitions/DelayedDefinitionsManager.cs:line 44
at Cecilifier.ApiDriver.SystemReflectionMetadata.SystemReflectionMetadataDefinitionsFactory.Method(IVisitorContext context, BodiedMemberDefinitionContext definitionContext, String declaringTypeName, String methodModifiers, IReadOnlyList`1 parameters, IList`1 typeParameters, Func`2 returnTypeResolver, MethodDefinitionVariable& methodDefinitionVariable) in /home/adriano/Projects/study/DotNet/Cecilifier/Cecilifier.ApiDriver.SystemReflectionMetadata/SystemReflectionMetadataDefinitionsFactory.cs:line 163