Replies: 4 comments 6 replies
-
I'd suggest to look the RuntimeException with debug build to see call stack. |
Beta Was this translation helpful? Give feedback.
-
The RuntimeException is created via throw in that script:
So I am trying to work our how it determines equivalence or not based on the dump of the variables above. |
Beta Was this translation helpful? Give feedback.
-
Adding this for completeness. I iterated through the properties of the object on both platforms and came up with these differences:
The other significant difference is x86_64 is CoreCLR runtime and s390x is mono. |
Beta Was this translation helpful? Give feedback.
-
One of the IBM crew who work on the .NET for s390x/ppc64le reported this: "I looked into the issue and “IsCollectible” is set to be true in the implementation of MemberInfo which is the parent class of ‘Type’ ( upon which ‘.IsCollectible’ is called). This attribute is overridden in RuntimeMethodInfo in CoreCLR where it is set to false. In the case of Mono, this attribute is not overridden as there is no definition to do so. Hence, the attribute remains as true and is returned as true. I will continue debugging this and will implement the override." |
Beta Was this translation helpful? Give feedback.
-
I am building 7.5.1 for an AlmaLinux s390x platform. I build and test on x86_64 and pass all but 7 tests. For s390x I am failing 710 but the vast majority are in
test/powershell/engine/Basic/StandardLibraryTypes.Tests.ps1
test. All the runtime exceptions areIsCollectible value is not correct
:The check failing is:
On an x86_64 system if I dump out the pertinent fields:
If I do it on s390x I get identical output. So something is going wrong with the comparison of the properties. What's happening "under the covers"? Is this a function of PowerShell or the underlying dotnet? Note, s390x is "big endian" so I am wondering if there is something that could be leading to this result?
Beta Was this translation helpful? Give feedback.
All reactions