diff --git a/ICSharpCode.NRefactory.CSharp/Refactoring/VariableReferenceGraph.cs b/ICSharpCode.NRefactory.CSharp/Refactoring/VariableReferenceGraph.cs index 487ba584c0..97eb8532b1 100644 --- a/ICSharpCode.NRefactory.CSharp/Refactoring/VariableReferenceGraph.cs +++ b/ICSharpCode.NRefactory.CSharp/Refactoring/VariableReferenceGraph.cs @@ -85,6 +85,8 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring ISet refStatements, BaseRefactoringContext context) { var cfg = cfgBuilder.BuildControlFlowGraph (statement, context.Resolver, context.CancellationToken); + if (cfg.Count == 0) + return new VariableReferenceNode (); return cfgVrNodeBuilder.Build (cfg [0], references, refStatements, context.Resolver); } @@ -92,6 +94,8 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring ISet refStatements, CSharpAstResolver resolver, CancellationToken cancellationToken = default(CancellationToken)) { var cfg = cfgBuilder.BuildControlFlowGraph (statement, resolver, cancellationToken); + if (cfg.Count == 0) + return new VariableReferenceNode(); return cfgVrNodeBuilder.Build (cfg [0], references, refStatements, resolver); }