Tacti Tacoz
Tacti Tacoz
CC#
Created by Tacti Tacoz on 11/13/2024 in #help
Ignore strong names
No but in my case I have a dependency that reference Newtonsoft.Json 8.0.0.0 unsigned, that I don't have control over. While my project reference Newtonsoft.Json 13.0.0.0 from nuget that is signed by newtonsoft. As I said above if my project referneces something from the dependency that has the different newtonsoft.json in it's signature the CS0012 error happens because of the strong name of the nuget version eventhough they are compatible just fine otherwise. This senario could have been as trivial as version 13.0.1 vs 13.0.2 and the strong name would still have broken the compatability
3 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
Pretty sure both visual studio and rider is closed source. Visual studio doesn’t even support filtering out auto fill suggestions. And to be fair I do got actual work to do at some point… Well anyway guys thanks for confirming me know that there is no supported work around at least
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
Well fair enough then. Hoesntly I would have forked Roslyn for years ago if it wasn’t for the fact I would lose all ide comparability
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
You may not be but the two others sure are
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
I know it can be done natively with Roslyn since I am actively doing so. It seems you poeple have declared it not to be so though, so I do indeed doubt it will help me much
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
Being told to F off in the most respectable way perhaps
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
But I don’t even have go to though I got go F off 🤷‍♂️
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
And I respectfully disagree in part due to the fact Roslyn supports it natively on its own
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
I opened a post to hear if there were a reasonable solution that didn’t involve A. Merging all my general purpose library and B. Doesn’t involve causing unessesary abstraction. All I got was to be told to find a different programming language and that same person and another that keeps spamming the same logical falciy reference that are irallivant due to what I explained above.
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
Roslyn supports what I want
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
This is an msbuild problem not Roslyn
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
How?
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
It does make sense, and it would work just fine in Roslyn’s perspective
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
The result would have been the same if all the code where in the same compilation, the limitation of not allowing me to organize within the means of the project structure is arbitrary.
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
Is msbuild a part of the clr? No.
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
It’s a compiler limitation not a .net limitation
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
Well that isn’t helpful 😦
56 replies
CC#
Created by Tacti Tacoz on 2/19/2024 in #help
✅ Circular References
Roslyn doesn’t require a reference to be a compiled dll file though. A compilation reference can be another compilation. It can be done if the devs of msbuild were willing to do it. It isn’t a clr violation either. So no I don’t see it as a chicken or egg scenario since neither project needs to be fully compiled to reference eachother.
56 replies
CC#
Created by Tacti Tacoz on 1/2/2024 in #help
collection expression on Span<T>
. Not in .net 7.0 either:
IL_0000: ldc.i4.1
IL_0001: newarr [System.Runtime]System.Int32
IL_0006: dup
IL_0007: ldc.i4.0
IL_0008: ldc.i4.1
IL_0009: stelem.i4
IL_000a: newobj instance void valuetype [System.Runtime]System.Span`1<int32>::.ctor(!0/*int32*/[])
IL_000f: call void Testt::Test(valuetype [System.Runtime]System.Span`1<int32>)
IL_0000: ldc.i4.1
IL_0001: newarr [System.Runtime]System.Int32
IL_0006: dup
IL_0007: ldc.i4.0
IL_0008: ldc.i4.1
IL_0009: stelem.i4
IL_000a: newobj instance void valuetype [System.Runtime]System.Span`1<int32>::.ctor(!0/*int32*/[])
IL_000f: call void Testt::Test(valuetype [System.Runtime]System.Span`1<int32>)
It's .net 8.0 only:
IL_0000: ldloca.s V_1
IL_0002: initobj valuetype '<>y__InlineArray1`1'<int32>
IL_0008: ldloca.s V_1
IL_000a: ldc.i4.0
IL_000b: call !!1/*int32*/& '<PrivateImplementationDetails>'::InlineArrayElementRef<valuetype '<>y__InlineArray1`1'<int32>, int32>(!!0/*valuetype '<>y__InlineArray1`1'<int32>*/&, int32)
IL_0010: ldc.i4.1
IL_0011: stind.i4
IL_0012: ldloca.s V_1
IL_0014: ldc.i4.1
IL_0015: call valuetype [System.Runtime]System.Span`1<!!1/*int32*/> '<PrivateImplementationDetails>'::InlineArrayAsSpan<valuetype '<>y__InlineArray1`1'<int32>, int32>(!!0/*valuetype '<>y__InlineArray1`1'<int32>*/&, int32)
IL_001a: call void Test::Test(valuetype [System.Runtime]System.Span`1<int32>)
IL_0000: ldloca.s V_1
IL_0002: initobj valuetype '<>y__InlineArray1`1'<int32>
IL_0008: ldloca.s V_1
IL_000a: ldc.i4.0
IL_000b: call !!1/*int32*/& '<PrivateImplementationDetails>'::InlineArrayElementRef<valuetype '<>y__InlineArray1`1'<int32>, int32>(!!0/*valuetype '<>y__InlineArray1`1'<int32>*/&, int32)
IL_0010: ldc.i4.1
IL_0011: stind.i4
IL_0012: ldloca.s V_1
IL_0014: ldc.i4.1
IL_0015: call valuetype [System.Runtime]System.Span`1<!!1/*int32*/> '<PrivateImplementationDetails>'::InlineArrayAsSpan<valuetype '<>y__InlineArray1`1'<int32>, int32>(!!0/*valuetype '<>y__InlineArray1`1'<int32>*/&, int32)
IL_001a: call void Test::Test(valuetype [System.Runtime]System.Span`1<int32>)
I guess because inline array require runtime support. But was it really too much to ask for them to add a stackalloc fallback though? Seems kinda sloppy to be honest
9 replies
CC#
Created by Tacti Tacoz on 1/2/2024 in #help
collection expression on Span<T>
or net standard for that matter:
IL_0000: ldarg.0 // this
IL_0001: ldc.i4.1
IL_0002: newarr [netstandard]System.Int32
IL_0007: dup
IL_0008: ldc.i4.0
IL_0009: ldc.i4.1
IL_000a: stelem.i4
IL_000b: newobj instance void valuetype [netstandard]System.Span`1<int32>::.ctor(!0/*int32*/[])
IL_0010: call instance void Test::test(valuetype [netstandard]System.Span`1<int32>)
IL_0000: ldarg.0 // this
IL_0001: ldc.i4.1
IL_0002: newarr [netstandard]System.Int32
IL_0007: dup
IL_0008: ldc.i4.0
IL_0009: ldc.i4.1
IL_000a: stelem.i4
IL_000b: newobj instance void valuetype [netstandard]System.Span`1<int32>::.ctor(!0/*int32*/[])
IL_0010: call instance void Test::test(valuetype [netstandard]System.Span`1<int32>)
9 replies