private IEnumerable<Microsoft.CodeAnalysis.CodeActions.CodeIssue> GetIssuesInternal(IEnumerable<ClousotOutput> results, CompilationUnitSyntax compilationUnitDeclaration) { IEnumerator<ClousotOutput> enumerator; try { enumerator = results.GetEnumerator(); } catch { yield break; } bool hasNext; try { hasNext = enumerator.MoveNext(); } catch { yield break; } while (hasNext) { var result = enumerator.Current; //foreach (var result in results ) { var msg = result.Message; var span = result.Span; var action = result.action; if (span.IsEmpty) { msg = "Unknown location: " + msg; span = compilationUnitDeclaration.GetFirstToken().Span; } if (action == null) yield return new Microsoft.CodeAnalysis.CodeActions.CodeIssue(Microsoft.CodeAnalysis.CodeActions.CodeIssueKind.Warning, span, msg); else yield return new Microsoft.CodeAnalysis.CodeActions.CodeIssue(Microsoft.CodeAnalysis.CodeActions.CodeIssueKind.Warning, span, msg, action); } try { hasNext = enumerator.MoveNext(); } catch { yield break; } } }