From b3c7f53c8614a455cdc417690c85ccd0d7815830 Mon Sep 17 00:00:00 2001 From: Siegfried Pammer Date: Wed, 11 Oct 2017 11:40:54 +0200 Subject: [PATCH] Add nullable handling to StatementBuilder.CreateTypedCaseLabel --- ICSharpCode.Decompiler/CSharp/StatementBuilder.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/ICSharpCode.Decompiler/CSharp/StatementBuilder.cs b/ICSharpCode.Decompiler/CSharp/StatementBuilder.cs index 91ca8d309..8be341e76 100644 --- a/ICSharpCode.Decompiler/CSharp/StatementBuilder.cs +++ b/ICSharpCode.Decompiler/CSharp/StatementBuilder.cs @@ -93,6 +93,9 @@ namespace ICSharpCode.Decompiler.CSharp } else if (type.Kind == TypeKind.Enum) { var enumType = type.GetDefinition().EnumUnderlyingType; value = CSharpPrimitiveCast.Cast(ReflectionHelper.GetTypeCode(enumType), i, false); + } else if (type.IsKnownType(KnownTypeCode.NullableOfT)) { + var nullableType = NullableType.GetUnderlyingType(type); + value = CSharpPrimitiveCast.Cast(ReflectionHelper.GetTypeCode(nullableType), i, false); } else { value = CSharpPrimitiveCast.Cast(ReflectionHelper.GetTypeCode(type), i, false); }