/// <summary> /// Show the diagnostic. /// </summary> /// <param name="syntaxNodeAnalysisContext">The syntaxNodeAnalysisContext.</param> /// <param name="triviaList">The triviaList.</param> private static void ShowDiagnostic(SyntaxNodeAnalysisContext syntaxNodeAnalysisContext, SyntaxTriviaList triviaList) { var node = syntaxNodeAnalysisContext.Node; var idx = triviaList.IndexOfTrivia(node.FullSpan) - 1; Location loc; if (idx < 0) { loc = node.GetLocation(); } else { loc = Location.Create( node.SyntaxTree, new TextSpan(triviaList[idx].FullSpan.Start, triviaList[idx].FullSpan.Length + triviaList[idx + 1].FullSpan.Length)); } syntaxNodeAnalysisContext.ReportDiagnostic(Diagnostic.Create(Rule, loc, DiagnosticId8000)); }