From d19c93fc4105d67c3392f1af94f6bd2ce9dc9611 Mon Sep 17 00:00:00 2001 From: Siegfried Pammer Date: Tue, 12 Apr 2022 08:45:20 +0200 Subject: [PATCH] Fix #2645: ToPrimitiveTypeCode: return 0, if known type is not primitive. --- ICSharpCode.Decompiler/Metadata/MetadataExtensions.cs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/ICSharpCode.Decompiler/Metadata/MetadataExtensions.cs b/ICSharpCode.Decompiler/Metadata/MetadataExtensions.cs index e84ef8464..445d0dffd 100644 --- a/ICSharpCode.Decompiler/Metadata/MetadataExtensions.cs +++ b/ICSharpCode.Decompiler/Metadata/MetadataExtensions.cs @@ -249,6 +249,10 @@ namespace ICSharpCode.Decompiler.Metadata get => minimalCorlibTypeProvider; } + /// + /// Converts to . + /// Returns 0 for known types that are not primitive types (such as ). + /// public static PrimitiveTypeCode ToPrimitiveTypeCode(this KnownTypeCode typeCode) { switch (typeCode) @@ -290,7 +294,7 @@ namespace ICSharpCode.Decompiler.Metadata case KnownTypeCode.UIntPtr: return PrimitiveTypeCode.UIntPtr; default: - throw new ArgumentOutOfRangeException(); + return 0; } }