When I'm in debugging SharpDevelop code,I save a document which include some non-english characters,tracking to the \src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs file at line 117, an exception is thrown
SharpDevelop Version : 5.0.0.2100-newNR-alpha-edbdd876
.NET Version : 4.0.30319.17929
OS Version : Microsoft Windows NT 6.1.7601 Service Pack 1
Current culture : Chinese (Simplified, PRC) (zh-CN)
Running under WOW6432, processor architecture: x86-64
Working Set Memory : 439776kb
GC Heap Memory : 195327kb
Unhandled WPF exception
Exception thrown:
System.InvalidOperationException: Could not find a resolver state for any parent of the specified node. Are you trying to resolve a node that is not a descendant of the CSharpAstResolver's root node?
at ICSharpCode.NRefactory.CSharp.Resolver.ResolveVisitor.GetPreviouslyScannedContext(AstNode node, AstNode& parent)
at ICSharpCode.NRefactory.CSharp.Resolver.ResolveVisitor.GetResolveResult(AstNode node)
at ICSharpCode.NRefactory.CSharp.Resolver.CSharpAstResolver.Resolve(AstNode node, CancellationToken cancellationToken)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.EvaluateConstant(Expression expr)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.EvaluateCondition(Expression expr)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.NodeCreationVisitor.VisitIfElseStatement(IfElseStatement ifElseStatement, ControlFlowNode data)
at ICSharpCode.NRefactory.CSharp.IfElseStatement.AcceptVisitor[T,S](IAstVisitor`2 visitor, T data)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.NodeCreationVisitor.HandleStatementList(AstNodeCollection`1 statements, ControlFlowNode source)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.NodeCreationVisitor.VisitBlockStatement(BlockStatement blockStatement, ControlFlowNode data)
at ICSharpCode.NRefactory.CSharp.BlockStatement.AcceptVisitor[T,S](IAstVisitor`2 visitor, T data)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.BuildControlFlowGraph(Statement statement, Func`3 resolver, CSharpTypeResolveContext typeResolveContext, CancellationToken cancellationToken)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.BuildControlFlowGraph(Statement statement, CSharpAstResolver resolver, CancellationToken cancellationToken)
at ICSharpCode.NRefactory.CSharp.Analysis.ReachabilityAnalysis.Create(Statement statement, CSharpAstResolver resolver, CancellationToken cancellationToken)
at ICSharpCode.NRefactory.CSharp.Refactoring.ConvertIfToSwitchAction.CollectSwitchSectionStatements(AstNodeCollection`1 result, RefactoringContext context, Statement statement)
at ICSharpCode.NRefactory.CSharp.Refactoring.ConvertIfToSwitchAction.CollectSwitchSections(ICollection`1 result, RefactoringContext context, IfElseStatement ifStatement, Expression switchExpr)
at ICSharpCode.NRefactory.CSharp.Refactoring.ConvertIfToSwitchAction.GetAction(RefactoringContext context, IfElseStatement node)
at ICSharpCode.NRefactory.CSharp.Refactoring.SpecializedCodeAction`1.<GetActions>d__0.MoveNext()
at System.Linq.Enumerable.<SelectIterator>d__7`2.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at CSharpBinding.Refactoring.CSharpCodeActionProviderDoozer.CSharpContextActionProviderWrapper.<>c__DisplayClass2.<<GetAvailableActionsAsync>b__1>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at ICSharpCode.AvalonEdit.AddIn.ContextActions.EditorActionsProvider.<GetActionsAsync>d__f.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at ICSharpCode.AvalonEdit.AddIn.ContextActions.ContextActionsBulbViewModel.<LoadActionsAsync>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at ICSharpCode.AvalonEdit.AddIn.ContextActions.ContextActionsRenderer.<TimerMoveTick>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<ThrowAsync>b__0(Object state)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
---- Recent log messages:
11:11:03.118 [1] INFO - Debugger Command: StepOut
11:11:03.173 [1] INFO - Open file f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Document\TextDocument.cs
11:11:03.177 [1] DEBUG - ActiveContentChanged to [AvalonEditViewContent f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Document\TextDocument.cs]
11:11:03.177 [1] DEBUG - ActiveWorkbenchWindowChanged to [AvalonWorkbenchWindow: TextDocument.cs]
11:11:03.177 [1] DEBUG - NavigationService
ActiveViewContent: TextDocument.cs
Subview: ${res:FormsDesigner.DesignTabPages.SourceTabPage}
11:11:03.177 [1] DEBUG - ActiveViewContentChanged to [AvalonEditViewContent f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Document\TextDocument.cs]
11:11:06.554 [1] INFO - Debugger Command: StepInto
11:11:06.570 [1] INFO - Open file f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs
11:11:06.578 [1] DEBUG - ActiveContentChanged to [AvalonEditViewContent f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs]
11:11:06.578 [1] DEBUG - ActiveWorkbenchWindowChanged to [AvalonWorkbenchWindow: CharRope.cs]
11:11:06.578 [1] DEBUG - NavigationService
ActiveViewContent: CharRope.cs
Subview: ${res:FormsDesigner.DesignTabPages.SourceTabPage}
11:11:06.578 [1] DEBUG - ActiveViewContentChanged to [AvalonEditViewContent f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs]
11:11:13.461 [1] INFO - Debugger Command: StepOver
11:11:13.476 [1] INFO - Open file f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs
11:11:14.205 [1] INFO - Debugger Command: StepOver
11:11:14.219 [1] INFO - Open file f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs
11:11:15.014 [1] INFO - Debugger Command: StepOver
11:11:15.024 [1] INFO - Open file f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs
11:11:22.910 [1] INFO - Debugger Command: StepOver
11:11:22.924 [1] INFO - Open file f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs
11:11:25.110 [1] INFO - Debugger Command: StepInto
11:11:25.126 [1] INFO - Open file f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs
11:11:38.005 [1] INFO - Debugger Command: StepOver
11:11:38.020 [1] INFO - Open file f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs
11:11:38.542 [1] ERROR - Unhandled WPF exception
--> Exception:
System.InvalidOperationException: Could not find a resolver state for any parent of the specified node. Are you trying to resolve a node that is not a descendant of the CSharpAstResolver's root node?
at ICSharpCode.NRefactory.CSharp.Resolver.ResolveVisitor.GetPreviouslyScannedContext(AstNode node, AstNode& parent)
at ICSharpCode.NRefactory.CSharp.Resolver.ResolveVisitor.GetResolveResult(AstNode node)
at ICSharpCode.NRefactory.CSharp.Resolver.CSharpAstResolver.Resolve(AstNode node, CancellationToken cancellationToken)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.EvaluateConstant(Expression expr)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.EvaluateCondition(Expression expr)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.NodeCreationVisitor.VisitIfElseStatement(IfElseStatement ifElseStatement, ControlFlowNode data)
at ICSharpCode.NRefactory.CSharp.IfElseStatement.AcceptVisitor[T,S](IAstVisitor`2 visitor, T data)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.NodeCreationVisitor.HandleStatementList(AstNodeCollection`1 statements, ControlFlowNode source)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.NodeCreationVisitor.VisitBlockStatement(BlockStatement blockStatement, ControlFlowNode data)
at ICSharpCode.NRefactory.CSharp.BlockStatement.AcceptVisitor[T,S](IAstVisitor`2 visitor, T data)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.BuildControlFlowGraph(Statement statement, Func`3 resolver, CSharpTypeResolveContext typeResolveContext, CancellationToken cancellationToken)
at ICSharpCode.NRefactory.CSharp.Analysis.ControlFlowGraphBuilder.BuildControlFlowGraph(Statement statement, CSharpAstResolver resolver, CancellationToken cancellationToken)
at ICSharpCode.NRefactory.CSharp.Analysis.ReachabilityAnalysis.Create(Statement statement, CSharpAstResolver resolver, CancellationToken cancellationToken)
at ICSharpCode.NRefactory.CSharp.Refactoring.ConvertIfToSwitchAction.CollectSwitchSectionStatements(AstNodeCollection`1 result, RefactoringContext context, Statement statement)
at ICSharpCode.NRefactory.CSharp.Refactoring.ConvertIfToSwitchAction.CollectSwitchSections(ICollection`1 result, RefactoringContext context, IfElseStatement ifStatement, Expression switchExpr)
at ICSharpCode.NRefactory.CSharp.Refactoring.ConvertIfToSwitchAction.GetAction(RefactoringContext context, IfElseStatement node)
at ICSharpCode.NRefactory.CSharp.Refactoring.SpecializedCodeAction`1.<GetActions>d__0.MoveNext()
at System.Linq.Enumerable.<SelectIterator>d__7`2.MoveNext()
at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
at CSharpBinding.Refactoring.CSharpCodeActionProviderDoozer.CSharpContextActionProviderWrapper.<>c__DisplayClass2.<<GetAvailableActionsAsync>b__1>d__4.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at ICSharpCode.AvalonEdit.AddIn.ContextActions.EditorActionsProvider.<GetActionsAsync>d__f.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at ICSharpCode.AvalonEdit.AddIn.ContextActions.ContextActionsBulbViewModel.<LoadActionsAsync>d__1.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task)
at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task)
at ICSharpCode.AvalonEdit.AddIn.ContextActions.ContextActionsRenderer.<TimerMoveTick>d__6.MoveNext()
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<ThrowAsync>b__0(Object state)
at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
at MS.Internal.Threading.ExceptionFilterHelper.TryCatchWhen(Object source, Delegate method, Object args, Int32 numArgs, Delegate catchHandler)
---- Post-error application state information:
Installed 3rd party AddIns:
Workbench.ActiveContent: [AvalonEditViewContent f:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\src\Libraries\AvalonEdit\ICSharpCode.AvalonEdit\Utils\CharRope.cs]
ProjectService.OpenSolution: [Solution: FileName=F:\SharpDevelop_5.0.0.2100_CSharpTechPreview_Source\SharpDevelop.sln, HasProjects=True, ReadOnly=False]
ProjectService.CurrentProject: [CSharpProject: ICSharpCode.AvalonEdit]