void AnalyzeInvocation(SyntaxNodeAnalysisContext context, InvocationExpressionSyntax invocation)
 {
     var containingMethod = invocation.GetContainingMethod();
     if (containingMethod.HasConstAttribute(context.SemanticModel))
     {
         var invokedMethod = invocation.GetInvokedMethod(context.SemanticModel);
         if (!invokedMethod.Syntax.HasConstAttribute(invokedMethod.Model))
         {
             context.ReportDiagnostic(Diagnostic.Create(Rule,
                 invocation.GetLocation(),
                 context.SemanticModel.GetDeclaredSymbol(containingMethod)?.Name,
                 context.SemanticModel.GetSymbolInfo(invocation).Symbol?.Name));
         }
     }
 }