Browse Source

Debugger: try harder to resolve cast expressions

pull/18/head
Alex Ivanov 14 years ago committed by Siegfried Pammer
parent
commit
c34ce8ddc3
  1. 11
      src/AddIns/Debugger/Debugger.Core/NRefactory/Visitors/ExpressionEvaluator.cs

11
src/AddIns/Debugger/Debugger.Core/NRefactory/Visitors/ExpressionEvaluator.cs

@ -338,7 +338,16 @@ namespace ICSharpCode.NRefactory.Visitors @@ -338,7 +338,16 @@ namespace ICSharpCode.NRefactory.Visitors
public override object VisitCastExpression(CastExpression castExpression, object data)
{
TypedValue val = Evaluate(castExpression.Expression);
DebugType castTo = castExpression.CastTo.ResolveType(context.AppDomain);
DebugType castTo = null;
try
{
castTo = castExpression.CastTo.ResolveType(context.AppDomain);
}
catch(System.Exception e)
{
castExpression.CastTo.Type = castExpression.CastTo.Type.Insert(0,context.MethodInfo.DeclaringType.Namespace + ".");
castTo = castExpression.CastTo.ResolveType(context.AppDomain);
}
if (castTo.IsPrimitive && val.Type.IsPrimitive && castTo != val.Type) {
object oldVal = val.PrimitiveValue;
object newVal;

Loading…
Cancel
Save