-
Notifications
You must be signed in to change notification settings - Fork 4.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[mono] Use correct cast_class for IntPtr[] #103841
Changes from 3 commits
8d3cbd0
4cabf4c
0cb529d
45323c5
ae4a5e9
ea60e34
4facff1
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
/ Licensed to the .NET Foundation under one or more agreements. | ||
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build coreclr Common Pri0 Test Build AnyOS AnyCPU checked)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build coreclr Common Pri0 Test Build AnyOS AnyCPU checked)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build coreclr Common Pri0 Test Build AnyOS AnyCPU checked)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build coreclr Common Pri0 Test Build AnyOS AnyCPU checked)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build coreclr Common Pri0 Test Build AnyOS AnyCPU checked)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-x64 Release AllSubsets_Mono_LLVMAot_RuntimeTests llvmaot)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-x64 Release AllSubsets_Mono_LLVMAot_RuntimeTests llvmaot)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-x64 Release AllSubsets_Mono_LLVMAot_RuntimeTests llvmaot)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-x64 Release AllSubsets_Mono_LLVMAot_RuntimeTests llvmaot)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-x64 Release AllSubsets_Mono_LLVMAot_RuntimeTests llvmaot)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-arm64 Release AllSubsets_Mono_Minijit_RuntimeTests minijit)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-arm64 Release AllSubsets_Mono_Minijit_RuntimeTests minijit)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-arm64 Release AllSubsets_Mono_Minijit_RuntimeTests minijit)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-arm64 Release AllSubsets_Mono_Minijit_RuntimeTests minijit)src/tests/Loader/classloader/Casting/Normalization.cs#L1
Check failure on line 1 in src/tests/Loader/classloader/Casting/Normalization.cs Azure Pipelines / runtime (Build linux-arm64 Release AllSubsets_Mono_Minijit_RuntimeTests minijit)src/tests/Loader/classloader/Casting/Normalization.cs#L1
|
||
// The .NET Foundation licenses this file to you under the MIT license. | ||
|
||
using System; | ||
using System.Runtime.InteropServices; | ||
|
||
using Xunit; | ||
|
||
public class NormalizationTests | ||
{ | ||
[Fact] | ||
public void IntPtrArrayNormalization() | ||
{ | ||
object x0 = new long[1]; | ||
object x1 = new ulong[1]; | ||
|
||
Assert.False(x is IntPtr[]); | ||
Assert.False(x1 is IntPtr[]); | ||
} |
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
<Project Sdk="Microsoft.NET.Sdk"> | ||
<PropertyGroup> | ||
<AllowUnsafeBlocks>true</AllowUnsafeBlocks> | ||
</PropertyGroup> | ||
steveisok marked this conversation as resolved.
Show resolved
Hide resolved
|
||
<ItemGroup> | ||
<Compile Include="Normalization.cs" /> | ||
</ItemGroup> | ||
</Project> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
MONO_TYPE_BOOLEAN
->byte_class
normalization above looks suspect as well. I do not think regular CoreCLR does normalization like that anywhere.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jkotas I think the
bool -> int8
fixup comes from when I misread I.8.7.2:The verification type of a bool is defined in I.8.7 as
The problem is I think I applied the verification type rules to unmanaged pointer types (ie
bool*
) rather than to managed pointer types (iebool&
)