diff --git a/src/AddIns/Debugger/Debugger.Core/NRefactory/Visitors/ExpressionEvaluator.cs b/src/AddIns/Debugger/Debugger.Core/NRefactory/Visitors/ExpressionEvaluator.cs index ba88af4a6d..4dba7629ce 100644 --- a/src/AddIns/Debugger/Debugger.Core/NRefactory/Visitors/ExpressionEvaluator.cs +++ b/src/AddIns/Debugger/Debugger.Core/NRefactory/Visitors/ExpressionEvaluator.cs @@ -524,10 +524,14 @@ namespace ICSharpCode.NRefactory.Visitors // Instance target = Evaluate(memberReferenceExpression.TargetObject); targetType = target.Type; - } catch (GetValueException) { + } catch (GetValueException e) { // Static target = null; - targetType = memberReferenceExpression.TargetObject.ResolveType(context.AppDomain); + try { + targetType = memberReferenceExpression.TargetObject.ResolveType(context.AppDomain); + } catch (GetValueException) { + throw e; // Use the other, nicer message + } } MemberInfo[] memberInfos = targetType.GetMember(memberReferenceExpression.MemberName, DebugType.BindingFlagsAllInScope); if (memberInfos.Length == 0)