Coverage Report

Created: 2021-09-21 08:58

/Users/buildslave/jenkins/workspace/coverage/llvm-project/clang/include/clang/AST/EvaluatedExprVisitor.h
Line
Count
Source (jump to first uncovered line)
1
//===--- EvaluatedExprVisitor.h - Evaluated expression visitor --*- C++ -*-===//
2
//
3
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4
// See https://llvm.org/LICENSE.txt for license information.
5
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6
//
7
//===----------------------------------------------------------------------===//
8
//
9
//  This file defines the EvaluatedExprVisitor class template, which visits
10
//  the potentially-evaluated subexpressions of a potentially-evaluated
11
//  expression.
12
//
13
//===----------------------------------------------------------------------===//
14
#ifndef LLVM_CLANG_AST_EVALUATEDEXPRVISITOR_H
15
#define LLVM_CLANG_AST_EVALUATEDEXPRVISITOR_H
16
17
#include "clang/AST/DeclCXX.h"
18
#include "clang/AST/Expr.h"
19
#include "clang/AST/ExprCXX.h"
20
#include "clang/AST/StmtVisitor.h"
21
#include "llvm/ADT/STLExtras.h"
22
23
namespace clang {
24
25
class ASTContext;
26
27
/// Given a potentially-evaluated expression, this visitor visits all
28
/// of its potentially-evaluated subexpressions, recursively.
29
template<template <typename> class Ptr, typename ImplClass>
30
class EvaluatedExprVisitorBase : public StmtVisitorBase<Ptr, ImplClass, void> {
31
protected:
32
  const ASTContext &Context;
33
34
public:
35
  // Return whether this visitor should recurse into discarded statements for a
36
  // 'constexpr-if'.
37
53
  bool shouldVisitDiscardedStmt() const { return true; }
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::shouldVisitDiscardedStmt() const
Line
Count
Source
37
6
  bool shouldVisitDiscardedStmt() const { return true; }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::shouldVisitDiscardedStmt() const
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::shouldVisitDiscardedStmt() const
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::shouldVisitDiscardedStmt() const
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::shouldVisitDiscardedStmt() const
Line
Count
Source
37
2
  bool shouldVisitDiscardedStmt() const { return true; }
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::shouldVisitDiscardedStmt() const
Line
Count
Source
37
3
  bool shouldVisitDiscardedStmt() const { return true; }
Unexecuted instantiation: SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::shouldVisitDiscardedStmt() const
Unexecuted instantiation: SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::shouldVisitDiscardedStmt() const
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::shouldVisitDiscardedStmt() const
Line
Count
Source
37
30
  bool shouldVisitDiscardedStmt() const { return true; }
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::shouldVisitDiscardedStmt() const
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::shouldVisitDiscardedStmt() const
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::shouldVisitDiscardedStmt() const
SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::shouldVisitDiscardedStmt() const
Line
Count
Source
37
2
  bool shouldVisitDiscardedStmt() const { return true; }
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::shouldVisitDiscardedStmt() const
Line
Count
Source
37
10
  bool shouldVisitDiscardedStmt() const { return true; }
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::shouldVisitDiscardedStmt() const
38
#define PTR(CLASS) typename Ptr<CLASS>::type
39
40
9.43M
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
37
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
5.47k
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
69
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
9.16k
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
8.74M
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
26
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
485k
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
34.0k
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
123k
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
182
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
18.4k
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
90
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
220
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
23
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
20
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::EvaluatedExprVisitorBase(clang::ASTContext const&)
Line
Count
Source
40
10.7k
  explicit EvaluatedExprVisitorBase(const ASTContext &Context) : Context(Context) { }
41
42
  // Expressions that have no potentially-evaluated subexpressions (but may have
43
  // other sub-expressions).
44
14.8M
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitDeclRefExpr(clang::DeclRefExpr const*)
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitDeclRefExpr(clang::DeclRefExpr const*)
Line
Count
Source
44
4.42k
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitDeclRefExpr(clang::DeclRefExpr const*)
Line
Count
Source
44
61
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitDeclRefExpr(clang::DeclRefExpr const*)
Line
Count
Source
44
14.8M
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitDeclRefExpr(clang::DeclRefExpr*)
Line
Count
Source
44
14.5k
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitDeclRefExpr(clang::DeclRefExpr const*)
Line
Count
Source
44
19.2k
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitDeclRefExpr(clang::DeclRefExpr*)
Line
Count
Source
44
214
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitDeclRefExpr(clang::DeclRefExpr const*)
Line
Count
Source
44
7
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitDeclRefExpr(clang::DeclRefExpr*)
Line
Count
Source
44
98
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitDeclRefExpr(clang::DeclRefExpr const*)
Line
Count
Source
44
10.4k
  void VisitDeclRefExpr(PTR(DeclRefExpr) E) { }
45
176
  void VisitOffsetOfExpr(PTR(OffsetOfExpr) E) { }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitOffsetOfExpr(clang::OffsetOfExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitOffsetOfExpr(clang::OffsetOfExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitOffsetOfExpr(clang::OffsetOfExpr const*)
Unexecuted instantiation: Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitOffsetOfExpr(clang::OffsetOfExpr*)
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitOffsetOfExpr(clang::OffsetOfExpr const*)
Line
Count
Source
45
165
  void VisitOffsetOfExpr(PTR(OffsetOfExpr) E) { }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitOffsetOfExpr(clang::OffsetOfExpr*)
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitOffsetOfExpr(clang::OffsetOfExpr*)
Line
Count
Source
45
11
  void VisitOffsetOfExpr(PTR(OffsetOfExpr) E) { }
Unexecuted instantiation: SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitOffsetOfExpr(clang::OffsetOfExpr*)
Unexecuted instantiation: SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitOffsetOfExpr(clang::OffsetOfExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitOffsetOfExpr(clang::OffsetOfExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitOffsetOfExpr(clang::OffsetOfExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitOffsetOfExpr(clang::OffsetOfExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitOffsetOfExpr(clang::OffsetOfExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitOffsetOfExpr(clang::OffsetOfExpr const*)
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitOffsetOfExpr(clang::OffsetOfExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitOffsetOfExpr(clang::OffsetOfExpr const*)
46
83.8k
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr const*)
AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr const*)
Line
Count
Source
46
2
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr*)
Line
Count
Source
46
35
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr const*)
Line
Count
Source
46
61.6k
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr*)
Line
Count
Source
46
1
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr*)
Line
Count
Source
46
22.0k
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr*)
Line
Count
Source
46
15
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr*)
Line
Count
Source
46
40
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr const*)
Line
Count
Source
46
14
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr*)
Line
Count
Source
46
3
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr*)
Line
Count
Source
46
3
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr const*)
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr*)
Line
Count
Source
46
24
  void VisitUnaryExprOrTypeTraitExpr(PTR(UnaryExprOrTypeTraitExpr) E) { }
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitUnaryExprOrTypeTraitExpr(clang::UnaryExprOrTypeTraitExpr const*)
47
17
  void VisitExpressionTraitExpr(PTR(ExpressionTraitExpr) E) { }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr const*)
Unexecuted instantiation: Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr*)
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr const*)
Line
Count
Source
47
12
  void VisitExpressionTraitExpr(PTR(ExpressionTraitExpr) E) { }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr*)
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr*)
Line
Count
Source
47
5
  void VisitExpressionTraitExpr(PTR(ExpressionTraitExpr) E) { }
Unexecuted instantiation: SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr*)
Unexecuted instantiation: SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr const*)
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitExpressionTraitExpr(clang::ExpressionTraitExpr const*)
48
2.92k
  void VisitBlockExpr(PTR(BlockExpr) E) { }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitBlockExpr(clang::BlockExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitBlockExpr(clang::BlockExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitBlockExpr(clang::BlockExpr const*)
Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitBlockExpr(clang::BlockExpr*)
Line
Count
Source
48
98
  void VisitBlockExpr(PTR(BlockExpr) E) { }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitBlockExpr(clang::BlockExpr const*)
Line
Count
Source
48
2.74k
  void VisitBlockExpr(PTR(BlockExpr) E) { }
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitBlockExpr(clang::BlockExpr*)
Line
Count
Source
48
52
  void VisitBlockExpr(PTR(BlockExpr) E) { }
SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitBlockExpr(clang::BlockExpr*)
Line
Count
Source
48
18
  void VisitBlockExpr(PTR(BlockExpr) E) { }
SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitBlockExpr(clang::BlockExpr*)
Line
Count
Source
48
9
  void VisitBlockExpr(PTR(BlockExpr) E) { }
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitBlockExpr(clang::BlockExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitBlockExpr(clang::BlockExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitBlockExpr(clang::BlockExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitBlockExpr(clang::BlockExpr*)
SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitBlockExpr(clang::BlockExpr const*)
Line
Count
Source
48
1
  void VisitBlockExpr(PTR(BlockExpr) E) { }
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitBlockExpr(clang::BlockExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitBlockExpr(clang::BlockExpr const*)
49
193
  void VisitCXXUuidofExpr(PTR(CXXUuidofExpr) E) { }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitCXXUuidofExpr(clang::CXXUuidofExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitCXXUuidofExpr(clang::CXXUuidofExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitCXXUuidofExpr(clang::CXXUuidofExpr const*)
Unexecuted instantiation: Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitCXXUuidofExpr(clang::CXXUuidofExpr*)
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitCXXUuidofExpr(clang::CXXUuidofExpr const*)
Line
Count
Source
49
128
  void VisitCXXUuidofExpr(PTR(CXXUuidofExpr) E) { }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitCXXUuidofExpr(clang::CXXUuidofExpr*)
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitCXXUuidofExpr(clang::CXXUuidofExpr*)
Line
Count
Source
49
65
  void VisitCXXUuidofExpr(PTR(CXXUuidofExpr) E) { }
Unexecuted instantiation: SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitCXXUuidofExpr(clang::CXXUuidofExpr*)
Unexecuted instantiation: SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitCXXUuidofExpr(clang::CXXUuidofExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitCXXUuidofExpr(clang::CXXUuidofExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitCXXUuidofExpr(clang::CXXUuidofExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitCXXUuidofExpr(clang::CXXUuidofExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitCXXUuidofExpr(clang::CXXUuidofExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitCXXUuidofExpr(clang::CXXUuidofExpr const*)
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitCXXUuidofExpr(clang::CXXUuidofExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitCXXUuidofExpr(clang::CXXUuidofExpr const*)
50
2.99k
  void VisitCXXNoexceptExpr(PTR(CXXNoexceptExpr) E) { }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr const*)
Unexecuted instantiation: Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr*)
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr const*)
Line
Count
Source
50
1.00k
  void VisitCXXNoexceptExpr(PTR(CXXNoexceptExpr) E) { }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr*)
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr*)
Line
Count
Source
50
1.98k
  void VisitCXXNoexceptExpr(PTR(CXXNoexceptExpr) E) { }
Unexecuted instantiation: SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr*)
Unexecuted instantiation: SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr const*)
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitCXXNoexceptExpr(clang::CXXNoexceptExpr const*)
51
52
632k
  void VisitMemberExpr(PTR(MemberExpr) E) {
53
    // Only the base matters.
54
632k
    return this->Visit(E->getBase());
55
632k
  }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitMemberExpr(clang::MemberExpr const*)
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitMemberExpr(clang::MemberExpr const*)
Line
Count
Source
52
1.22k
  void VisitMemberExpr(PTR(MemberExpr) E) {
53
    // Only the base matters.
54
1.22k
    return this->Visit(E->getBase());
55
1.22k
  }
AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitMemberExpr(clang::MemberExpr const*)
Line
Count
Source
52
9
  void VisitMemberExpr(PTR(MemberExpr) E) {
53
    // Only the base matters.
54
9
    return this->Visit(E->getBase());
55
9
  }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitMemberExpr(clang::MemberExpr const*)
Line
Count
Source
52
630k
  void VisitMemberExpr(PTR(MemberExpr) E) {
53
    // Only the base matters.
54
630k
    return this->Visit(E->getBase());
55
630k
  }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitMemberExpr(clang::MemberExpr*)
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitMemberExpr(clang::MemberExpr const*)
Line
Count
Source
52
24
  void VisitMemberExpr(PTR(MemberExpr) E) {
53
    // Only the base matters.
54
24
    return this->Visit(E->getBase());
55
24
  }
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitMemberExpr(clang::MemberExpr*)
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitMemberExpr(clang::MemberExpr*)
Line
Count
Source
52
2
  void VisitMemberExpr(PTR(MemberExpr) E) {
53
    // Only the base matters.
54
2
    return this->Visit(E->getBase());
55
2
  }
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitMemberExpr(clang::MemberExpr const*)
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitMemberExpr(clang::MemberExpr*)
Line
Count
Source
52
22
  void VisitMemberExpr(PTR(MemberExpr) E) {
53
    // Only the base matters.
54
22
    return this->Visit(E->getBase());
55
22
  }
CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitMemberExpr(clang::MemberExpr const*)
Line
Count
Source
52
40
  void VisitMemberExpr(PTR(MemberExpr) E) {
53
    // Only the base matters.
54
40
    return this->Visit(E->getBase());
55
40
  }
56
57
49
  void VisitChooseExpr(PTR(ChooseExpr) E) {
58
    // Don't visit either child expression if the condition is dependent.
59
49
    if (E->getCond()->isValueDependent())
60
0
      return;
61
    // Only the selected subexpression matters; the other one is not evaluated.
62
49
    return this->Visit(E->getChosenSubExpr());
63
49
  }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitChooseExpr(clang::ChooseExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitChooseExpr(clang::ChooseExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitChooseExpr(clang::ChooseExpr const*)
Unexecuted instantiation: Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitChooseExpr(clang::ChooseExpr*)
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitChooseExpr(clang::ChooseExpr const*)
Line
Count
Source
57
49
  void VisitChooseExpr(PTR(ChooseExpr) E) {
58
    // Don't visit either child expression if the condition is dependent.
59
49
    if (E->getCond()->isValueDependent())
60
0
      return;
61
    // Only the selected subexpression matters; the other one is not evaluated.
62
49
    return this->Visit(E->getChosenSubExpr());
63
49
  }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitChooseExpr(clang::ChooseExpr*)
Unexecuted instantiation: SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitChooseExpr(clang::ChooseExpr*)
Unexecuted instantiation: SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitChooseExpr(clang::ChooseExpr*)
Unexecuted instantiation: SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitChooseExpr(clang::ChooseExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitChooseExpr(clang::ChooseExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitChooseExpr(clang::ChooseExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitChooseExpr(clang::ChooseExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitChooseExpr(clang::ChooseExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitChooseExpr(clang::ChooseExpr const*)
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitChooseExpr(clang::ChooseExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitChooseExpr(clang::ChooseExpr const*)
64
65
454
  void VisitGenericSelectionExpr(PTR(GenericSelectionExpr) E) {
66
    // The controlling expression of a generic selection is not evaluated.
67
68
    // Don't visit either child expression if the condition is type-dependent.
69
454
    if (E->isResultDependent())
70
0
      return;
71
    // Only the selected subexpression matters; the other subexpressions and the
72
    // controlling expression are not evaluated.
73
454
    return this->Visit(E->getResultExpr());
74
454
  }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitGenericSelectionExpr(clang::GenericSelectionExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitGenericSelectionExpr(clang::GenericSelectionExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitGenericSelectionExpr(clang::GenericSelectionExpr const*)
Unexecuted instantiation: Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitGenericSelectionExpr(clang::GenericSelectionExpr*)
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitGenericSelectionExpr(clang::GenericSelectionExpr const*)
Line
Count
Source
65
454
  void VisitGenericSelectionExpr(PTR(GenericSelectionExpr) E) {
66
    // The controlling expression of a generic selection is not evaluated.
67
68
    // Don't visit either child expression if the condition is type-dependent.
69
454
    if (E->isResultDependent())
70
0
      return;
71
    // Only the selected subexpression matters; the other subexpressions and the
72
    // controlling expression are not evaluated.
73
454
    return this->Visit(E->getResultExpr());
74
454
  }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitGenericSelectionExpr(clang::GenericSelectionExpr*)
Unexecuted instantiation: SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitGenericSelectionExpr(clang::GenericSelectionExpr*)
Unexecuted instantiation: SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitGenericSelectionExpr(clang::GenericSelectionExpr*)
Unexecuted instantiation: SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitGenericSelectionExpr(clang::GenericSelectionExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitGenericSelectionExpr(clang::GenericSelectionExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitGenericSelectionExpr(clang::GenericSelectionExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitGenericSelectionExpr(clang::GenericSelectionExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitGenericSelectionExpr(clang::GenericSelectionExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitGenericSelectionExpr(clang::GenericSelectionExpr const*)
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitGenericSelectionExpr(clang::GenericSelectionExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitGenericSelectionExpr(clang::GenericSelectionExpr const*)
75
76
24
  void VisitDesignatedInitExpr(PTR(DesignatedInitExpr) E) {
77
    // Only the actual initializer matters; the designators are all constant
78
    // expressions.
79
24
    return this->Visit(E->getInit());
80
24
  }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitDesignatedInitExpr(clang::DesignatedInitExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitDesignatedInitExpr(clang::DesignatedInitExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitDesignatedInitExpr(clang::DesignatedInitExpr const*)
Unexecuted instantiation: Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitDesignatedInitExpr(clang::DesignatedInitExpr*)
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitDesignatedInitExpr(clang::DesignatedInitExpr const*)
Line
Count
Source
76
10
  void VisitDesignatedInitExpr(PTR(DesignatedInitExpr) E) {
77
    // Only the actual initializer matters; the designators are all constant
78
    // expressions.
79
10
    return this->Visit(E->getInit());
80
10
  }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitDesignatedInitExpr(clang::DesignatedInitExpr*)
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitDesignatedInitExpr(clang::DesignatedInitExpr*)
Line
Count
Source
76
14
  void VisitDesignatedInitExpr(PTR(DesignatedInitExpr) E) {
77
    // Only the actual initializer matters; the designators are all constant
78
    // expressions.
79
14
    return this->Visit(E->getInit());
80
14
  }
Unexecuted instantiation: SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitDesignatedInitExpr(clang::DesignatedInitExpr*)
Unexecuted instantiation: SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitDesignatedInitExpr(clang::DesignatedInitExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitDesignatedInitExpr(clang::DesignatedInitExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitDesignatedInitExpr(clang::DesignatedInitExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitDesignatedInitExpr(clang::DesignatedInitExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitDesignatedInitExpr(clang::DesignatedInitExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitDesignatedInitExpr(clang::DesignatedInitExpr const*)
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitDesignatedInitExpr(clang::DesignatedInitExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitDesignatedInitExpr(clang::DesignatedInitExpr const*)
81
82
2.98k
  void VisitCXXTypeidExpr(PTR(CXXTypeidExpr) E) {
83
2.98k
    if (E->isPotentiallyEvaluated())
84
117
      return this->Visit(E->getExprOperand());
85
2.98k
  }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitCXXTypeidExpr(clang::CXXTypeidExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitCXXTypeidExpr(clang::CXXTypeidExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitCXXTypeidExpr(clang::CXXTypeidExpr const*)
Unexecuted instantiation: Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitCXXTypeidExpr(clang::CXXTypeidExpr*)
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitCXXTypeidExpr(clang::CXXTypeidExpr const*)
Line
Count
Source
82
1.55k
  void VisitCXXTypeidExpr(PTR(CXXTypeidExpr) E) {
83
1.55k
    if (E->isPotentiallyEvaluated())
84
95
      return this->Visit(E->getExprOperand());
85
1.55k
  }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitCXXTypeidExpr(clang::CXXTypeidExpr*)
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitCXXTypeidExpr(clang::CXXTypeidExpr*)
Line
Count
Source
82
1.42k
  void VisitCXXTypeidExpr(PTR(CXXTypeidExpr) E) {
83
1.42k
    if (E->isPotentiallyEvaluated())
84
17
      return this->Visit(E->getExprOperand());
85
1.42k
  }
SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitCXXTypeidExpr(clang::CXXTypeidExpr*)
Line
Count
Source
82
3
  void VisitCXXTypeidExpr(PTR(CXXTypeidExpr) E) {
83
3
    if (E->isPotentiallyEvaluated())
84
2
      return this->Visit(E->getExprOperand());
85
3
  }
SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitCXXTypeidExpr(clang::CXXTypeidExpr*)
Line
Count
Source
82
3
  void VisitCXXTypeidExpr(PTR(CXXTypeidExpr) E) {
83
3
    if (E->isPotentiallyEvaluated())
84
3
      return this->Visit(E->getExprOperand());
85
3
  }
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitCXXTypeidExpr(clang::CXXTypeidExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitCXXTypeidExpr(clang::CXXTypeidExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitCXXTypeidExpr(clang::CXXTypeidExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitCXXTypeidExpr(clang::CXXTypeidExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitCXXTypeidExpr(clang::CXXTypeidExpr const*)
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitCXXTypeidExpr(clang::CXXTypeidExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitCXXTypeidExpr(clang::CXXTypeidExpr const*)
86
87
140k
  void VisitCallExpr(PTR(CallExpr) CE) {
88
140k
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
140k
      return getDerived().VisitExpr(CE);
90
140k
  }
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitCallExpr(clang::CallExpr const*)
Line
Count
Source
87
3
  void VisitCallExpr(PTR(CallExpr) CE) {
88
3
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
3
      return getDerived().VisitExpr(CE);
90
3
  }
AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitCallExpr(clang::CallExpr const*)
Line
Count
Source
87
31
  void VisitCallExpr(PTR(CallExpr) CE) {
88
31
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
31
      return getDerived().VisitExpr(CE);
90
31
  }
Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitCallExpr(clang::CallExpr*)
Line
Count
Source
87
93.6k
  void VisitCallExpr(PTR(CallExpr) CE) {
88
93.6k
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
93.6k
      return getDerived().VisitExpr(CE);
90
93.6k
  }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitCallExpr(clang::CallExpr*)
Line
Count
Source
87
13
  void VisitCallExpr(PTR(CallExpr) CE) {
88
13
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
13
      return getDerived().VisitExpr(CE);
90
13
  }
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitCallExpr(clang::CallExpr*)
Line
Count
Source
87
40.8k
  void VisitCallExpr(PTR(CallExpr) CE) {
88
40.8k
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
40.8k
      return getDerived().VisitExpr(CE);
90
40.8k
  }
SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitCallExpr(clang::CallExpr*)
Line
Count
Source
87
227
  void VisitCallExpr(PTR(CallExpr) CE) {
88
227
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
227
      return getDerived().VisitExpr(CE);
90
227
  }
SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitCallExpr(clang::CallExpr*)
Line
Count
Source
87
1.06k
  void VisitCallExpr(PTR(CallExpr) CE) {
88
1.06k
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
1.06k
      return getDerived().VisitExpr(CE);
90
1.06k
  }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitCallExpr(clang::CallExpr const*)
Line
Count
Source
87
103
  void VisitCallExpr(PTR(CallExpr) CE) {
88
103
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
103
      return getDerived().VisitExpr(CE);
90
103
  }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitCallExpr(clang::CallExpr*)
Line
Count
Source
87
1
  void VisitCallExpr(PTR(CallExpr) CE) {
88
1
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
1
      return getDerived().VisitExpr(CE);
90
1
  }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitCallExpr(clang::CallExpr*)
Line
Count
Source
87
3
  void VisitCallExpr(PTR(CallExpr) CE) {
88
3
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
3
      return getDerived().VisitExpr(CE);
90
3
  }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitCallExpr(clang::CallExpr*)
Line
Count
Source
87
42
  void VisitCallExpr(PTR(CallExpr) CE) {
88
42
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
42
      return getDerived().VisitExpr(CE);
90
42
  }
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitCallExpr(clang::CallExpr*)
Line
Count
Source
87
24
  void VisitCallExpr(PTR(CallExpr) CE) {
88
24
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
24
      return getDerived().VisitExpr(CE);
90
24
  }
CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitCallExpr(clang::CallExpr const*)
Line
Count
Source
87
4.86k
  void VisitCallExpr(PTR(CallExpr) CE) {
88
4.86k
    if (!CE->isUnevaluatedBuiltinCall(Context))
89
4.86k
      return getDerived().VisitExpr(CE);
90
4.86k
  }
91
92
12.0k
  void VisitLambdaExpr(PTR(LambdaExpr) LE) {
93
    // Only visit the capture initializers, and not the body.
94
12.0k
    for (LambdaExpr::const_capture_init_iterator I = LE->capture_init_begin(),
95
12.0k
                                                 E = LE->capture_init_end();
96
21.2k
         I != E; 
++I9.13k
)
97
9.13k
      if (*I)
98
9.05k
        this->Visit(*I);
99
12.0k
  }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitLambdaExpr(clang::LambdaExpr const*)
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitLambdaExpr(clang::LambdaExpr const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitLambdaExpr(clang::LambdaExpr const*)
Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitLambdaExpr(clang::LambdaExpr*)
Line
Count
Source
92
1.36k
  void VisitLambdaExpr(PTR(LambdaExpr) LE) {
93
    // Only visit the capture initializers, and not the body.
94
1.36k
    for (LambdaExpr::const_capture_init_iterator I = LE->capture_init_begin(),
95
1.36k
                                                 E = LE->capture_init_end();
96
4.03k
         I != E; 
++I2.67k
)
97
2.67k
      if (*I)
98
2.67k
        this->Visit(*I);
99
1.36k
  }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitLambdaExpr(clang::LambdaExpr const*)
Line
Count
Source
92
7.38k
  void VisitLambdaExpr(PTR(LambdaExpr) LE) {
93
    // Only visit the capture initializers, and not the body.
94
7.38k
    for (LambdaExpr::const_capture_init_iterator I = LE->capture_init_begin(),
95
7.38k
                                                 E = LE->capture_init_end();
96
12.5k
         I != E; 
++I5.14k
)
97
5.14k
      if (*I)
98
5.06k
        this->Visit(*I);
99
7.38k
  }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitLambdaExpr(clang::LambdaExpr*)
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitLambdaExpr(clang::LambdaExpr*)
Line
Count
Source
92
3.17k
  void VisitLambdaExpr(PTR(LambdaExpr) LE) {
93
    // Only visit the capture initializers, and not the body.
94
3.17k
    for (LambdaExpr::const_capture_init_iterator I = LE->capture_init_begin(),
95
3.17k
                                                 E = LE->capture_init_end();
96
4.46k
         I != E; 
++I1.29k
)
97
1.29k
      if (*I)
98
1.28k
        this->Visit(*I);
99
3.17k
  }
SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitLambdaExpr(clang::LambdaExpr*)
Line
Count
Source
92
71
  void VisitLambdaExpr(PTR(LambdaExpr) LE) {
93
    // Only visit the capture initializers, and not the body.
94
71
    for (LambdaExpr::const_capture_init_iterator I = LE->capture_init_begin(),
95
71
                                                 E = LE->capture_init_end();
96
94
         I != E; 
++I23
)
97
23
      if (*I)
98
23
        this->Visit(*I);
99
71
  }
SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitLambdaExpr(clang::LambdaExpr*)
Line
Count
Source
92
97
  void VisitLambdaExpr(PTR(LambdaExpr) LE) {
93
    // Only visit the capture initializers, and not the body.
94
97
    for (LambdaExpr::const_capture_init_iterator I = LE->capture_init_begin(),
95
97
                                                 E = LE->capture_init_end();
96
97
         I != E; 
++I0
)
97
0
      if (*I)
98
0
        this->Visit(*I);
99
97
  }
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitLambdaExpr(clang::LambdaExpr const*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitLambdaExpr(clang::LambdaExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitLambdaExpr(clang::LambdaExpr*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitLambdaExpr(clang::LambdaExpr*)
Unexecuted instantiation: SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitLambdaExpr(clang::LambdaExpr const*)
Unexecuted instantiation: MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitLambdaExpr(clang::LambdaExpr*)
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitLambdaExpr(clang::LambdaExpr const*)
100
101
  /// The basis case walks all of the children of the statement or
102
  /// expression, assuming they are all potentially evaluated.
103
38.9M
  void VisitStmt(PTR(Stmt) S) {
104
38.9M
    for (auto *SubStmt : S->children())
105
36.8M
      if (SubStmt)
106
36.7M
        this->Visit(SubStmt);
107
38.9M
  }
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitStmt(clang::Stmt const*)
Line
Count
Source
103
77
  void VisitStmt(PTR(Stmt) S) {
104
77
    for (auto *SubStmt : S->children())
105
153
      if (SubStmt)
106
153
        this->Visit(SubStmt);
107
77
  }
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitStmt(clang::Stmt const*)
Line
Count
Source
103
18.9k
  void VisitStmt(PTR(Stmt) S) {
104
18.9k
    for (auto *SubStmt : S->children())
105
18.4k
      if (SubStmt)
106
18.4k
        this->Visit(SubStmt);
107
18.9k
  }
AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitStmt(clang::Stmt const*)
Line
Count
Source
103
286
  void VisitStmt(PTR(Stmt) S) {
104
286
    for (auto *SubStmt : S->children())
105
372
      if (SubStmt)
106
372
        this->Visit(SubStmt);
107
286
  }
Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitStmt(clang::Stmt*)
Line
Count
Source
103
2.03M
  void VisitStmt(PTR(Stmt) S) {
104
2.03M
    for (auto *SubStmt : S->children())
105
2.53M
      if (SubStmt)
106
2.44M
        this->Visit(SubStmt);
107
2.03M
  }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitStmt(clang::Stmt const*)
Line
Count
Source
103
35.6M
  void VisitStmt(PTR(Stmt) S) {
104
35.6M
    for (auto *SubStmt : S->children())
105
33.2M
      if (SubStmt)
106
33.2M
        this->Visit(SubStmt);
107
35.6M
  }
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitStmt(clang::Stmt*)
Line
Count
Source
103
104
  void VisitStmt(PTR(Stmt) S) {
104
104
    for (auto *SubStmt : S->children())
105
113
      if (SubStmt)
106
113
        this->Visit(SubStmt);
107
104
  }
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitStmt(clang::Stmt*)
Line
Count
Source
103
1.09M
  void VisitStmt(PTR(Stmt) S) {
104
1.09M
    for (auto *SubStmt : S->children())
105
922k
      if (SubStmt)
106
922k
        this->Visit(SubStmt);
107
1.09M
  }
SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitStmt(clang::Stmt*)
Line
Count
Source
103
27.8k
  void VisitStmt(PTR(Stmt) S) {
104
27.8k
    for (auto *SubStmt : S->children())
105
9.79k
      if (SubStmt)
106
9.79k
        this->Visit(SubStmt);
107
27.8k
  }
SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitStmt(clang::Stmt*)
Line
Count
Source
103
72.1k
  void VisitStmt(PTR(Stmt) S) {
104
72.1k
    for (auto *SubStmt : S->children())
105
46.2k
      if (SubStmt)
106
44.8k
        this->Visit(SubStmt);
107
72.1k
  }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitStmt(clang::Stmt const*)
Line
Count
Source
103
38.3k
  void VisitStmt(PTR(Stmt) S) {
104
38.3k
    for (auto *SubStmt : S->children())
105
39.1k
      if (SubStmt)
106
39.1k
        this->Visit(SubStmt);
107
38.3k
  }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitStmt(clang::Stmt*)
Line
Count
Source
103
308
  void VisitStmt(PTR(Stmt) S) {
104
308
    for (auto *SubStmt : S->children())
105
388
      if (SubStmt)
106
388
        this->Visit(SubStmt);
107
308
  }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitStmt(clang::Stmt*)
Line
Count
Source
103
606
  void VisitStmt(PTR(Stmt) S) {
104
606
    for (auto *SubStmt : S->children())
105
638
      if (SubStmt)
106
638
        this->Visit(SubStmt);
107
606
  }
SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitStmt(clang::Stmt const*)
Line
Count
Source
103
47
  void VisitStmt(PTR(Stmt) S) {
104
47
    for (auto *SubStmt : S->children())
105
54
      if (SubStmt)
106
53
        this->Visit(SubStmt);
107
47
  }
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitStmt(clang::Stmt*)
Line
Count
Source
103
400
  void VisitStmt(PTR(Stmt) S) {
104
400
    for (auto *SubStmt : S->children())
105
502
      if (SubStmt)
106
502
        this->Visit(SubStmt);
107
400
  }
CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitStmt(clang::Stmt const*)
Line
Count
Source
103
24.5k
  void VisitStmt(PTR(Stmt) S) {
104
24.5k
    for (auto *SubStmt : S->children())
105
24.2k
      if (SubStmt)
106
24.2k
        this->Visit(SubStmt);
107
24.5k
  }
108
109
2.37k
  void VisitIfStmt(PTR(IfStmt) If) {
110
2.37k
    if (!getDerived().shouldVisitDiscardedStmt()) {
111
2.32k
      if (auto SubStmt = If->getNondiscardedCase(Context)) {
112
3
        if (*SubStmt)
113
2
          this->Visit(*SubStmt);
114
3
        return;
115
3
      }
116
2.32k
    }
117
118
2.37k
    getDerived().VisitStmt(If);
119
2.37k
  }
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::VisitIfStmt(clang::IfStmt const*)
Line
Count
Source
109
6
  void VisitIfStmt(PTR(IfStmt) If) {
110
6
    if (!getDerived().shouldVisitDiscardedStmt()) {
111
0
      if (auto SubStmt = If->getNondiscardedCase(Context)) {
112
0
        if (*SubStmt)
113
0
          this->Visit(*SubStmt);
114
0
        return;
115
0
      }
116
0
    }
117
118
6
    getDerived().VisitStmt(If);
119
6
  }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::VisitIfStmt(clang::IfStmt const*)
Unexecuted instantiation: AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::VisitIfStmt(clang::IfStmt const*)
Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::VisitIfStmt(clang::IfStmt*)
Line
Count
Source
109
2.32k
  void VisitIfStmt(PTR(IfStmt) If) {
110
2.32k
    if (!getDerived().shouldVisitDiscardedStmt()) {
111
2.32k
      if (auto SubStmt = If->getNondiscardedCase(Context)) {
112
3
        if (*SubStmt)
113
2
          this->Visit(*SubStmt);
114
3
        return;
115
3
      }
116
2.32k
    }
117
118
2.32k
    getDerived().VisitStmt(If);
119
2.32k
  }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::VisitIfStmt(clang::IfStmt const*)
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::VisitIfStmt(clang::IfStmt*)
Line
Count
Source
109
2
  void VisitIfStmt(PTR(IfStmt) If) {
110
2
    if (!getDerived().shouldVisitDiscardedStmt()) {
111
0
      if (auto SubStmt = If->getNondiscardedCase(Context)) {
112
0
        if (*SubStmt)
113
0
          this->Visit(*SubStmt);
114
0
        return;
115
0
      }
116
0
    }
117
118
2
    getDerived().VisitStmt(If);
119
2
  }
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::VisitIfStmt(clang::IfStmt*)
Line
Count
Source
109
3
  void VisitIfStmt(PTR(IfStmt) If) {
110
3
    if (!getDerived().shouldVisitDiscardedStmt()) {
111
0
      if (auto SubStmt = If->getNondiscardedCase(Context)) {
112
0
        if (*SubStmt)
113
0
          this->Visit(*SubStmt);
114
0
        return;
115
0
      }
116
0
    }
117
118
3
    getDerived().VisitStmt(If);
119
3
  }
Unexecuted instantiation: SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::VisitIfStmt(clang::IfStmt*)
Unexecuted instantiation: SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::VisitIfStmt(clang::IfStmt*)
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::VisitIfStmt(clang::IfStmt const*)
Line
Count
Source
109
30
  void VisitIfStmt(PTR(IfStmt) If) {
110
30
    if (!getDerived().shouldVisitDiscardedStmt()) {
111
0
      if (auto SubStmt = If->getNondiscardedCase(Context)) {
112
0
        if (*SubStmt)
113
0
          this->Visit(*SubStmt);
114
0
        return;
115
0
      }
116
0
    }
117
118
30
    getDerived().VisitStmt(If);
119
30
  }
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::VisitIfStmt(clang::IfStmt*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::VisitIfStmt(clang::IfStmt*)
Unexecuted instantiation: SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::VisitIfStmt(clang::IfStmt*)
SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::VisitIfStmt(clang::IfStmt const*)
Line
Count
Source
109
2
  void VisitIfStmt(PTR(IfStmt) If) {
110
2
    if (!getDerived().shouldVisitDiscardedStmt()) {
111
0
      if (auto SubStmt = If->getNondiscardedCase(Context)) {
112
0
        if (*SubStmt)
113
0
          this->Visit(*SubStmt);
114
0
        return;
115
0
      }
116
0
    }
117
118
2
    getDerived().VisitStmt(If);
119
2
  }
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::VisitIfStmt(clang::IfStmt*)
Line
Count
Source
109
10
  void VisitIfStmt(PTR(IfStmt) If) {
110
10
    if (!getDerived().shouldVisitDiscardedStmt()) {
111
0
      if (auto SubStmt = If->getNondiscardedCase(Context)) {
112
0
        if (*SubStmt)
113
0
          this->Visit(*SubStmt);
114
0
        return;
115
0
      }
116
0
    }
117
118
10
    getDerived().VisitStmt(If);
119
10
  }
Unexecuted instantiation: CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::VisitIfStmt(clang::IfStmt const*)
120
121
145k
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SideEffectFinder>::getDerived()
Line
Count
Source
121
15
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
Unexecuted instantiation: Expr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::NonTrivialCallFinder>::getDerived()
AnalysisBasedWarnings.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::ContainsReference>::getDerived()
Line
Count
Source
121
31
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
Sema.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeferredDiagnosticsEmitter>::getDerived()
Line
Count
Source
121
98.2k
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
Unexecuted instantiation: SemaChecking.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::SequenceChecker>::getDerived()
SemaChecking.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::FindCaptureVisitor>::getDerived()
Line
Count
Source
121
17
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
SemaDecl.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::SelfReferenceChecker>::getDerived()
Line
Count
Source
121
40.8k
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
SemaDeclCXX.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::UninitializedFieldVisitor>::getDerived()
Line
Count
Source
121
227
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
SemaExpr.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::EvaluatedExprMarker>::getDerived()
Line
Count
Source
121
1.06k
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::BreakContinueFinder>::getDerived()
Line
Count
Source
121
163
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclExtractor>::getDerived()
Line
Count
Source
121
1
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::DeclMatcher>::getDerived()
Line
Count
Source
121
3
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
SemaStmt.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CommaVisitor>::getDerived()
Line
Count
Source
121
42
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
SemaStmtAttr.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::CallExprFinder>::getDerived()
Line
Count
Source
121
4
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitorBase<std::__1::add_pointer, (anonymous namespace)::CheckOverflowOps>::getDerived()
Line
Count
Source
121
44
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
CGClass.cpp:clang::EvaluatedExprVisitorBase<llvm::make_const_ptr, (anonymous namespace)::DynamicThisUseChecker>::getDerived()
Line
Count
Source
121
4.86k
  ImplClass &getDerived() { return *static_cast<ImplClass *>(this); }
122
123
#undef PTR
124
};
125
126
/// EvaluatedExprVisitor - This class visits 'Expr *'s
127
template <typename ImplClass>
128
class EvaluatedExprVisitor
129
    : public EvaluatedExprVisitorBase<std::add_pointer, ImplClass> {
130
public:
131
  explicit EvaluatedExprVisitor(const ASTContext &Context)
132
652k
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
Sema.cpp:clang::EvaluatedExprVisitor<(anonymous namespace)::DeferredDiagnosticsEmitter>::EvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
132
9.16k
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
SemaChecking.cpp:clang::EvaluatedExprVisitor<(anonymous namespace)::FindCaptureVisitor>::EvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
132
26
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
SemaDecl.cpp:clang::EvaluatedExprVisitor<(anonymous namespace)::SelfReferenceChecker>::EvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
132
485k
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
SemaDeclCXX.cpp:clang::EvaluatedExprVisitor<(anonymous namespace)::UninitializedFieldVisitor>::EvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
132
34.0k
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
SemaExpr.cpp:clang::EvaluatedExprVisitor<(anonymous namespace)::EvaluatedExprMarker>::EvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
132
123k
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
SemaStmt.cpp:clang::EvaluatedExprVisitor<(anonymous namespace)::CommaVisitor>::EvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
132
182
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
SemaStmt.cpp:clang::EvaluatedExprVisitor<(anonymous namespace)::DeclExtractor>::EvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
132
90
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
SemaStmt.cpp:clang::EvaluatedExprVisitor<(anonymous namespace)::DeclMatcher>::EvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
132
220
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
MallocOverflowSecurityChecker.cpp:clang::EvaluatedExprVisitor<(anonymous namespace)::CheckOverflowOps>::EvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
132
20
      : EvaluatedExprVisitorBase<std::add_pointer, ImplClass>(Context) {}
133
};
134
135
/// ConstEvaluatedExprVisitor - This class visits 'const Expr *'s.
136
template <typename ImplClass>
137
class ConstEvaluatedExprVisitor
138
    : public EvaluatedExprVisitorBase<llvm::make_const_ptr, ImplClass> {
139
public:
140
  explicit ConstEvaluatedExprVisitor(const ASTContext &Context)
141
8.78M
      : EvaluatedExprVisitorBase<llvm::make_const_ptr, ImplClass>(Context) {}
Expr.cpp:clang::ConstEvaluatedExprVisitor<(anonymous namespace)::SideEffectFinder>::ConstEvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
141
37
      : EvaluatedExprVisitorBase<llvm::make_const_ptr, ImplClass>(Context) {}
Expr.cpp:clang::ConstEvaluatedExprVisitor<(anonymous namespace)::NonTrivialCallFinder>::ConstEvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
141
5.47k
      : EvaluatedExprVisitorBase<llvm::make_const_ptr, ImplClass>(Context) {}
AnalysisBasedWarnings.cpp:clang::ConstEvaluatedExprVisitor<(anonymous namespace)::ContainsReference>::ConstEvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
141
69
      : EvaluatedExprVisitorBase<llvm::make_const_ptr, ImplClass>(Context) {}
SemaChecking.cpp:clang::ConstEvaluatedExprVisitor<(anonymous namespace)::SequenceChecker>::ConstEvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
141
8.74M
      : EvaluatedExprVisitorBase<llvm::make_const_ptr, ImplClass>(Context) {}
SemaStmt.cpp:clang::ConstEvaluatedExprVisitor<(anonymous namespace)::BreakContinueFinder>::ConstEvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
141
18.4k
      : EvaluatedExprVisitorBase<llvm::make_const_ptr, ImplClass>(Context) {}
SemaStmtAttr.cpp:clang::ConstEvaluatedExprVisitor<(anonymous namespace)::CallExprFinder>::ConstEvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
141
23
      : EvaluatedExprVisitorBase<llvm::make_const_ptr, ImplClass>(Context) {}
CGClass.cpp:clang::ConstEvaluatedExprVisitor<(anonymous namespace)::DynamicThisUseChecker>::ConstEvaluatedExprVisitor(clang::ASTContext const&)
Line
Count
Source
141
10.7k
      : EvaluatedExprVisitorBase<llvm::make_const_ptr, ImplClass>(Context) {}
142
};
143
}
144
145
#endif // LLVM_CLANG_AST_EVALUATEDEXPRVISITOR_H