Coverage Report

Created: 2021-08-24 07:12

/Users/buildslave/jenkins/workspace/coverage/llvm-project/clang/include/clang/Basic/PartialDiagnostic.h
Line
Count
Source (jump to first uncovered line)
1
//===- PartialDiagnostic.h - Diagnostic "closures" --------------*- 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
/// \file
10
/// Implements a partial diagnostic that can be emitted anwyhere
11
/// in a DiagnosticBuilder stream.
12
//
13
//===----------------------------------------------------------------------===//
14
15
#ifndef LLVM_CLANG_BASIC_PARTIALDIAGNOSTIC_H
16
#define LLVM_CLANG_BASIC_PARTIALDIAGNOSTIC_H
17
18
#include "clang/Basic/Diagnostic.h"
19
#include "clang/Basic/LLVM.h"
20
#include "clang/Basic/SourceLocation.h"
21
#include "llvm/ADT/SmallVector.h"
22
#include "llvm/ADT/StringRef.h"
23
#include <cassert>
24
#include <cstdint>
25
#include <string>
26
#include <type_traits>
27
#include <utility>
28
29
namespace clang {
30
31
class DeclContext;
32
class IdentifierInfo;
33
34
class PartialDiagnostic : public StreamingDiagnostic {
35
private:
36
  // NOTE: Sema assumes that PartialDiagnostic is location-invariant
37
  // in the sense that its bits can be safely memcpy'ed and destructed
38
  // in the new location.
39
40
  /// The diagnostic ID.
41
  mutable unsigned DiagID = 0;
42
public:
43
  struct NullDiagnostic {};
44
45
  /// Create a null partial diagnostic, which cannot carry a payload,
46
  /// and only exists to be swapped with a real partial diagnostic.
47
104k
  PartialDiagnostic(NullDiagnostic) {}
48
49
  PartialDiagnostic(unsigned DiagID, DiagStorageAllocator &Allocator_)
50
3.80M
      : StreamingDiagnostic(Allocator_), DiagID(DiagID) {}
51
52
  PartialDiagnostic(const PartialDiagnostic &Other)
53
2.08M
      : StreamingDiagnostic(), DiagID(Other.DiagID) {
54
2.08M
    Allocator = Other.Allocator;
55
2.08M
    if (Other.DiagStorage) {
56
51.8k
      DiagStorage = getStorage();
57
51.8k
      *DiagStorage = *Other.DiagStorage;
58
51.8k
    }
59
2.08M
  }
60
61
1.21M
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
1.21M
    const StreamingDiagnostic &DB = *this;
63
1.21M
    DB << V;
64
1.21M
    return *this;
65
1.21M
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AccessKinds>(clang::AccessKinds const&) const
Line
Count
Source
61
1.88k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
1.88k
    const StreamingDiagnostic &DB = *this;
63
1.88k
    DB << V;
64
1.88k
    return *this;
65
1.88k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<bool>(bool const&) const
Line
Count
Source
61
184k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
184k
    const StreamingDiagnostic &DB = *this;
63
184k
    DB << V;
64
184k
    return *this;
65
184k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::QualType>(clang::QualType const&) const
Line
Count
Source
61
199k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
199k
    const StreamingDiagnostic &DB = *this;
63
199k
    DB << V;
64
199k
    return *this;
65
199k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::VarDecl const*>(clang::VarDecl const* const&) const
Line
Count
Source
61
651k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
651k
    const StreamingDiagnostic &DB = *this;
63
651k
    DB << V;
64
651k
    return *this;
65
651k
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [31]>(char const (&) [31]) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > >(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > const&) const
Line
Count
Source
61
13.9k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
13.9k
    const StreamingDiagnostic &DB = *this;
63
13.9k
    DB << V;
64
13.9k
    return *this;
65
13.9k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<int>(int const&) const
Line
Count
Source
61
5.57k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
5.57k
    const StreamingDiagnostic &DB = *this;
63
5.57k
    DB << V;
64
5.57k
    return *this;
65
5.57k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NamedDecl const*>(clang::NamedDecl const* const&) const
Line
Count
Source
61
1.80k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
1.80k
    const StreamingDiagnostic &DB = *this;
63
1.80k
    DB << V;
64
1.80k
    return *this;
65
1.80k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FieldDecl*>(clang::FieldDecl* const&) const
Line
Count
Source
61
13
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
13
    const StreamingDiagnostic &DB = *this;
63
13
    DB << V;
64
13
    return *this;
65
13
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FieldDecl const*>(clang::FieldDecl const* const&) const
Line
Count
Source
61
498
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
498
    const StreamingDiagnostic &DB = *this;
63
498
    DB << V;
64
498
    return *this;
65
498
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CheckSubobjectKind>(clang::CheckSubobjectKind const&) const
Line
Count
Source
61
182
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
182
    const StreamingDiagnostic &DB = *this;
63
182
    DB << V;
64
182
    return *this;
65
182
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<unsigned int>(unsigned int const&) const
Line
Count
Source
61
670
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
670
    const StreamingDiagnostic &DB = *this;
63
670
    DB << V;
64
670
    return *this;
65
670
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXRecordDecl const*>(clang::CXXRecordDecl const* const&) const
Line
Count
Source
61
38
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
38
    const StreamingDiagnostic &DB = *this;
63
38
    DB << V;
64
38
    return *this;
65
38
  }
ExprConstant.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<(anonymous namespace)::DynAlloc::Kind>((anonymous namespace)::DynAlloc::Kind const&) const
Line
Count
Source
61
34
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
34
    const StreamingDiagnostic &DB = *this;
63
34
    DB << V;
64
34
    return *this;
65
34
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXMethodDecl const*>(clang::CXXMethodDecl const* const&) const
Line
Count
Source
61
8
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
8
    const StreamingDiagnostic &DB = *this;
63
8
    DB << V;
64
8
    return *this;
65
8
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXRecordDecl*>(clang::CXXRecordDecl* const&) const
Line
Count
Source
61
17
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
17
    const StreamingDiagnostic &DB = *this;
63
17
    DB << V;
64
17
    return *this;
65
17
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FunctionDecl const*>(clang::FunctionDecl const* const&) const
Line
Count
Source
61
31.9k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
31.9k
    const StreamingDiagnostic &DB = *this;
63
31.9k
    DB << V;
64
31.9k
    return *this;
65
31.9k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::RecordDecl const*>(clang::RecordDecl const* const&) const
Line
Count
Source
61
8
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
8
    const StreamingDiagnostic &DB = *this;
63
8
    DB << V;
64
8
    return *this;
65
8
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AccessSpecifier>(clang::AccessSpecifier const&) const
Line
Count
Source
61
8
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
8
    const StreamingDiagnostic &DB = *this;
63
8
    DB << V;
64
8
    return *this;
65
8
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FunctionDecl*>(clang::FunctionDecl* const&) const
Line
Count
Source
61
2.22k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
2.22k
    const StreamingDiagnostic &DB = *this;
63
2.22k
    DB << V;
64
2.22k
    return *this;
65
2.22k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SourceRange>(clang::SourceRange const&) const
Line
Count
Source
61
27.9k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
27.9k
    const StreamingDiagnostic &DB = *this;
63
27.9k
    DB << V;
64
27.9k
    return *this;
65
27.9k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXConstructorDecl const*>(clang::CXXConstructorDecl const* const&) const
Line
Count
Source
61
1.28k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
1.28k
    const StreamingDiagnostic &DB = *this;
63
1.28k
    DB << V;
64
1.28k
    return *this;
65
1.28k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::StringRef>(llvm::StringRef const&) const
Line
Count
Source
61
8.86k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
8.86k
    const StreamingDiagnostic &DB = *this;
63
8.86k
    DB << V;
64
8.86k
    return *this;
65
8.86k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ValueDecl const*>(clang::ValueDecl const* const&) const
Line
Count
Source
61
29.8k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
29.8k
    const StreamingDiagnostic &DB = *this;
63
29.8k
    DB << V;
64
29.8k
    return *this;
65
29.8k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FixItHint>(clang::FixItHint const&) const
Line
Count
Source
61
141
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
141
    const StreamingDiagnostic &DB = *this;
63
141
    DB << V;
64
141
    return *this;
65
141
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCMethodDecl const*>(clang::ObjCMethodDecl const* const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::threadSafety::LockKind>(clang::threadSafety::LockKind const&) const
Line
Count
Source
61
1.25k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
1.25k
    const StreamingDiagnostic &DB = *this;
63
1.25k
    DB << V;
64
1.25k
    return *this;
65
1.25k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallString<32u> >(llvm::SmallString<32u> const&) const
Line
Count
Source
61
34
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
34
    const StreamingDiagnostic &DB = *this;
63
34
    DB << V;
64
34
    return *this;
65
34
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [17]>(char const (&) [17]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [46]>(char const (&) [46]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [36]>(char const (&) [36]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [45]>(char const (&) [45]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [23]>(char const (&) [23]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [24]>(char const (&) [24]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NoDestroyAttr const*>(clang::NoDestroyAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NotTailCalledAttr const*>(clang::NotTailCalledAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [32]>(char const (&) [32]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [34]>(char const (&) [34]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [19]>(char const (&) [19]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [29]>(char const (&) [29]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [76]>(char const (&) [76]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CFUnknownTransferAttr const*>(clang::CFUnknownTransferAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [11]>(char const (&) [11]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CFAuditedTransferAttr const*>(clang::CFAuditedTransferAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CUDASharedAttr const*>(clang::CUDASharedAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::HIPManagedAttr const*>(clang::HIPManagedAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CUDAGlobalAttr const*>(clang::CUDAGlobalAttr const* const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [8]>(char const (&) [8]) const
Line
Count
Source
61
1
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
1
    const StreamingDiagnostic &DB = *this;
63
1
    DB << V;
64
1
    return *this;
65
1
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CUDADeviceBuiltinTextureTypeAttr const*>(clang::CUDADeviceBuiltinTextureTypeAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CUDADeviceBuiltinSurfaceTypeAttr const*>(clang::CUDADeviceBuiltinSurfaceTypeAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CUDADeviceAttr const*>(clang::CUDADeviceAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CUDAHostAttr const*>(clang::CUDAHostAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [54]>(char const (&) [54]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CUDAConstantAttr const*>(clang::CUDAConstantAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [39]>(char const (&) [39]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [47]>(char const (&) [47]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [16]>(char const (&) [16]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [22]>(char const (&) [22]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::HotAttr const*>(clang::HotAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::InternalLinkageAttr const*>(clang::InternalLinkageAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [58]>(char const (&) [58]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [59]>(char const (&) [59]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [53]>(char const (&) [53]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NakedAttr const*>(clang::NakedAttr const* const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [6]>(char const (&) [6]) const
Line
Count
Source
61
12
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
12
    const StreamingDiagnostic &DB = *this;
63
12
    DB << V;
64
12
    return *this;
65
12
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [57]>(char const (&) [57]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [48]>(char const (&) [48]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ColdAttr const*>(clang::ColdAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CommonAttr const*>(clang::CommonAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [42]>(char const (&) [42]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [43]>(char const (&) [43]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Mips16Attr const*>(clang::Mips16Attr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::MipsInterruptAttr const*>(clang::MipsInterruptAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::MicroMipsAttr const*>(clang::MicroMipsAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::MipsShortCallAttr const*>(clang::MipsShortCallAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::MipsLongCallAttr const*>(clang::MipsLongCallAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [56]>(char const (&) [56]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [18]>(char const (&) [18]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [20]>(char const (&) [20]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DisableTailCallsAttr const*>(clang::DisableTailCallsAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [75]>(char const (&) [75]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AlwaysDestroyAttr const*>(clang::AlwaysDestroyAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [25]>(char const (&) [25]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SpeculativeLoadHardeningAttr const*>(clang::SpeculativeLoadHardeningAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [38]>(char const (&) [38]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [35]>(char const (&) [35]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AlwaysInlineAttr const*>(clang::AlwaysInlineAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [28]>(char const (&) [28]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [71]>(char const (&) [71]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [92]>(char const (&) [92]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [67]>(char const (&) [67]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [49]>(char const (&) [49]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::PointerAttr const*>(clang::PointerAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::OwnerAttr const*>(clang::OwnerAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [69]>(char const (&) [69]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [77]>(char const (&) [77]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NoSpeculativeLoadHardeningAttr const*>(clang::NoSpeculativeLoadHardeningAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [150]>(char const (&) [150]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [50]>(char const (&) [50]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [87]>(char const (&) [87]) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ValueDecl*>(clang::ValueDecl* const&) const
Line
Count
Source
61
572
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
572
    const StreamingDiagnostic &DB = *this;
63
572
    DB << V;
64
572
    return *this;
65
572
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [7]>(char const (&) [7]) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::IdentifierInfo*>(clang::IdentifierInfo* const&) const
Line
Count
Source
61
487
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
487
    const StreamingDiagnostic &DB = *this;
63
487
    DB << V;
64
487
    return *this;
65
487
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [12]>(char const (&) [12]) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [5]>(char const (&) [5]) const
Line
Count
Source
61
1
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
1
    const StreamingDiagnostic &DB = *this;
63
1
    DB << V;
64
1
    return *this;
65
1
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [14]>(char const (&) [14]) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [9]>(char const (&) [9]) const
Line
Count
Source
61
338
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
338
    const StreamingDiagnostic &DB = *this;
63
338
    DB << V;
64
338
    return *this;
65
338
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NamedDecl*>(clang::NamedDecl* const&) const
Line
Count
Source
61
17
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
17
    const StreamingDiagnostic &DB = *this;
63
17
    DB << V;
64
17
    return *this;
65
17
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ASTContext::SectionInfo>(clang::ASTContext::SectionInfo const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ParsedAttr>(clang::ParsedAttr const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::IdentifierInfo const*>(clang::IdentifierInfo const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallVector<clang::FixItHint, 12u> >(llvm::SmallVector<clang::FixItHint, 12u> const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<CastType>(CastType const&) const
Line
Count
Source
61
53
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
53
    const StreamingDiagnostic &DB = *this;
63
53
    DB << V;
64
53
    return *this;
65
53
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [37]>(char const (&) [37]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::ArrayRef<clang::FixItHint> >(llvm::ArrayRef<clang::FixItHint> const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CharSourceRange>(clang::CharSourceRange const&) const
Line
Count
Source
61
3.56k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
3.56k
    const StreamingDiagnostic &DB = *this;
63
3.56k
    DB << V;
64
3.56k
    return *this;
65
3.56k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallString<4u> >(llvm::SmallString<4u> const&) const
Line
Count
Source
61
17
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
17
    const StreamingDiagnostic &DB = *this;
63
17
    DB << V;
64
17
    return *this;
65
17
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallString<16u> >(llvm::SmallString<16u> const&) const
Line
Count
Source
61
494
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
494
    const StreamingDiagnostic &DB = *this;
63
494
    DB << V;
64
494
    return *this;
65
494
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<AbsoluteValueKind>(AbsoluteValueKind const&) const
Unexecuted instantiation: SemaChecking.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::DiagnoseAlwaysNonNullPointer(clang::Expr*, clang::Expr::NullPointerConstantKind, bool, clang::SourceRange)::$_14>(clang::Sema::DiagnoseAlwaysNonNullPointer(clang::Expr*, clang::Expr::NullPointerConstantKind, bool, clang::SourceRange)::$_14 const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ConceptSpecializationExpr*>(clang::ConceptSpecializationExpr* const&) const
Unexecuted instantiation: SemaCoroutine.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<isValidCoroutineContext(clang::Sema&, clang::SourceLocation, llvm::StringRef)::InvalidFuncDiag>(isValidCoroutineContext(clang::Sema&, clang::SourceLocation, llvm::StringRef)::InvalidFuncDiag const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::LabelDecl*>(clang::LabelDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AlignedAttr const*>(clang::AlignedAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AlignedAttr*>(clang::AlignedAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DLLImportAttr const*>(clang::DLLImportAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Attr const*>(clang::Attr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char const*>(char const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AnyX86NoCallerSavedRegistersAttr*>(clang::AnyX86NoCallerSavedRegistersAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXX11NoReturnAttr const*>(clang::CXX11NoReturnAttr const* const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::VarDecl*>(clang::VarDecl* const&) const
Line
Count
Source
61
5
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
5
    const StreamingDiagnostic &DB = *this;
63
5
    DB << V;
64
5
    return *this;
65
5
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TypedefNameDecl*>(clang::TypedefNameDecl* const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TemplateName>(clang::TemplateName const&) const
Line
Count
Source
61
31
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
31
    const StreamingDiagnostic &DB = *this;
63
31
    DB << V;
64
31
    return *this;
65
31
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::InheritableAttr const*>(clang::InheritableAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<ShadowedDeclKind>(ShadowedDeclKind const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DeclContext const*>(clang::DeclContext const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::StorageClass>(clang::StorageClass const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::NonTrivialCUnionContext>(clang::Sema::NonTrivialCUnionContext const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [1]>(char const (&) [1]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallVector<clang::FixItHint, 1u> >(llvm::SmallVector<clang::FixItHint, 1u> const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::UsedAttr*>(clang::UsedAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::RetainAttr*>(clang::RetainAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ParmVarDecl*>(clang::ParmVarDecl* const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ParmVarDecl const*>(clang::ParmVarDecl const* const&) const
Line
Count
Source
61
43
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
43
    const StreamingDiagnostic &DB = *this;
63
43
    DB << V;
64
43
    return *this;
65
43
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TypedefDecl*>(clang::TypedefDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TagTypeKind>(clang::TagTypeKind const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::NonTagKind>(clang::Sema::NonTagKind const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TagDecl*>(clang::TagDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::CXXSpecialMember>(clang::Sema::CXXSpecialMember const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::RecordDecl*>(clang::RecordDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::EnumConstantDecl*>(clang::EnumConstantDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::EnumDecl*>(clang::EnumDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::OwnershipAttr const*>(clang::OwnershipAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::VecReturnAttr*>(clang::VecReturnAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AttributeDeclKind>(clang::AttributeDeclKind const&) const
Unexecuted instantiation: SemaDeclAttr.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<handleXReturnsXRetainedAttr(clang::Sema&, clang::Decl*, clang::ParsedAttr const&)::$_3>(handleXReturnsXRetainedAttr(clang::Sema&, clang::Decl*, clang::ParsedAttr const&)::$_3 const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [4]>(char const (&) [4]) const
Line
Count
Source
61
3
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
3
    const StreamingDiagnostic &DB = *this;
63
3
    DB << V;
64
3
    return *this;
65
3
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SwiftAsyncAttr const*>(clang::SwiftAsyncAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SwiftAsyncErrorAttr const*>(clang::SwiftAsyncErrorAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AttributeCommonInfo>(clang::AttributeCommonInfo const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SwiftNameAttr const*>(clang::SwiftNameAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AlwaysInlineAttr*>(clang::AlwaysInlineAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::MinSizeAttr*>(clang::MinSizeAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ParameterABIAttr*>(clang::ParameterABIAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DLLImportAttr*>(clang::DLLImportAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ReqdWorkGroupSizeAttr const*>(clang::ReqdWorkGroupSizeAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::WorkGroupSizeHintAttr const*>(clang::WorkGroupSizeHintAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::VecTypeHintAttr const*>(clang::VecTypeHintAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::OpenCLIntelReqdSubGroupSizeAttr const*>(clang::OpenCLIntelReqdSubGroupSizeAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AMDGPUFlatWorkGroupSizeAttr const*>(clang::AMDGPUFlatWorkGroupSizeAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AMDGPUWavesPerEUAttr const*>(clang::AMDGPUWavesPerEUAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AMDGPUNumSGPRAttr const*>(clang::AMDGPUNumSGPRAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AMDGPUNumVGPRAttr const*>(clang::AMDGPUNumVGPRAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::AbstractDiagSelID>(clang::Sema::AbstractDiagSelID const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ClassTemplateDecl*>(clang::ClassTemplateDecl* const&) const
SemaDeclCXX.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<(anonymous namespace)::DefaultedComparisonSubobject::$_7>((anonymous namespace)::DefaultedComparisonSubobject::$_7 const&) const
Line
Count
Source
61
17
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
17
    const StreamingDiagnostic &DB = *this;
63
17
    DB << V;
64
17
    return *this;
65
17
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<TrivialSubobjectKind>(TrivialSubobjectKind const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXConstructorDecl*>(clang::CXXConstructorDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DecompositionDecl*>(clang::DecompositionDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Attr*>(clang::Attr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::InheritableAttr*>(clang::InheritableAttr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ClassTemplateSpecializationDecl*>(clang::ClassTemplateSpecializationDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TemplateDecl*>(clang::TemplateDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [15]>(char const (&) [15]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCMethodDecl*>(clang::ObjCMethodDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCInterfaceDecl const*>(clang::ObjCInterfaceDecl const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCCategoryDecl*>(clang::ObjCCategoryDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCProtocolDecl const*>(clang::ObjCProtocolDecl const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCMethodFamily>(clang::ObjCMethodFamily const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [10]>(char const (&) [10]) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCProtocolDecl*>(clang::ObjCProtocolDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Selector>(clang::Selector const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCIvarDecl const*>(clang::ObjCIvarDecl const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CanQual<clang::Type> >(clang::CanQual<clang::Type> const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallString<40u> >(llvm::SmallString<40u> const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SourceLocation>(clang::SourceLocation const&) const
Line
Count
Source
61
58
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
58
    const StreamingDiagnostic &DB = *this;
63
58
    DB << V;
64
58
    return *this;
65
58
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<OriginalExprKind>(OriginalExprKind const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TypeAliasTemplateDecl*>(clang::TypeAliasTemplateDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::UsingPackDecl*>(clang::UsingPackDecl* const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::VariadicCallType>(clang::Sema::VariadicCallType const&) const
Line
Count
Source
61
563
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
563
    const StreamingDiagnostic &DB = *this;
63
563
    DB << V;
64
563
    return *this;
65
563
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Expr*>(clang::Expr* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [2]>(char const (&) [2]) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::AssignmentAction>(clang::Sema::AssignmentAction const&) const
Line
Count
Source
61
15.2k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
15.2k
    const StreamingDiagnostic &DB = *this;
63
15.2k
    DB << V;
64
15.2k
    return *this;
65
15.2k
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::ObjCLiteralKind>(clang::Sema::ObjCLiteralKind const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCBridgeCastKind>(clang::ObjCBridgeCastKind const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::OverloadingResult>(clang::OverloadingResult const&) const
Line
Count
Source
61
40
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
40
    const StreamingDiagnostic &DB = *this;
63
40
    DB << V;
64
40
    return *this;
65
40
  }
Unexecuted instantiation: SemaInit.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<(anonymous namespace)::ReferenceKind>((anonymous namespace)::ReferenceKind const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DeclarationName>(clang::DeclarationName const&) const
Line
Count
Source
61
30.7k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
30.7k
    const StreamingDiagnostic &DB = *this;
63
30.7k
    DB << V;
64
30.7k
    return *this;
65
30.7k
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Qualifiers::ObjCLifetime>(clang::Qualifiers::ObjCLifetime const&) const
Unexecuted instantiation: SemaObjCProperty.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<SelectPropertyForSynthesisFromProtocols(clang::Sema&, clang::SourceLocation, clang::ObjCInterfaceDecl*, clang::ObjCPropertyDecl*)::MismatchKind>(SelectPropertyForSynthesisFromProtocols(clang::Sema&, clang::SourceLocation, clang::ObjCInterfaceDecl*, clang::ObjCPropertyDecl*)::MismatchKind const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCPropertyDecl*>(clang::ObjCPropertyDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCIvarDecl*>(clang::ObjCIvarDecl* const&) const
Unexecuted instantiation: SemaOpenMP.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<reportOriginalDsa(clang::Sema&, (anonymous namespace)::DSAStackTy const*, clang::ValueDecl const*, (anonymous namespace)::DSAStackTy::DSAVarData const&, bool)::$_39>(reportOriginalDsa(clang::Sema&, (anonymous namespace)::DSAStackTy const*, clang::ValueDecl const*, (anonymous namespace)::DSAStackTy::DSAVarData const&, bool)::$_39 const&) const
Unexecuted instantiation: SemaOpenMP.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<getPrivateItem(clang::Sema&, clang::Expr*&, clang::SourceLocation&, clang::SourceRange&, bool)::$_43>(getPrivateItem(clang::Sema&, clang::Expr*&, clang::SourceLocation&, clang::SourceRange&, bool)::$_43 const&) const
Unexecuted instantiation: SemaOpenMP.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<checkNestingOfRegions(clang::Sema&, (anonymous namespace)::DSAStackTy const*, llvm::omp::Directive, clang::DeclarationNameInfo const&, llvm::omp::Directive, clang::SourceLocation)::$_42>(checkNestingOfRegions(clang::Sema&, (anonymous namespace)::DSAStackTy const*, llvm::omp::Directive, clang::DeclarationNameInfo const&, llvm::omp::Directive, clang::SourceLocation)::$_42 const&) const
Unexecuted instantiation: SemaOpenMP.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<(anonymous namespace)::OpenMPAtomicUpdateChecker::ExprAnalysisErrorCode>((anonymous namespace)::OpenMPAtomicUpdateChecker::ExprAnalysisErrorCode const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [13]>(char const (&) [13]) const
Unexecuted instantiation: SemaOpenMP.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::ActOnOpenMPAtomicDirective(llvm::ArrayRef<clang::OMPClause*>, clang::Stmt*, clang::SourceLocation, clang::SourceLocation)::$_20>(clang::Sema::ActOnOpenMPAtomicDirective(llvm::ArrayRef<clang::OMPClause*>, clang::Stmt*, clang::SourceLocation, clang::SourceLocation)::$_20 const&) const
Unexecuted instantiation: SemaOpenMP.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::ActOnOpenMPAtomicDirective(llvm::ArrayRef<clang::OMPClause*>, clang::Stmt*, clang::SourceLocation, clang::SourceLocation)::$_21>(clang::Sema::ActOnOpenMPAtomicDirective(llvm::ArrayRef<clang::OMPClause*>, clang::Stmt*, clang::SourceLocation, clang::SourceLocation)::$_21 const&) const
Unexecuted instantiation: SemaOpenMP.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::ActOnOpenMPAtomicDirective(llvm::ArrayRef<clang::OMPClause*>, clang::Stmt*, clang::SourceLocation, clang::SourceLocation)::$_22>(clang::Sema::ActOnOpenMPAtomicDirective(llvm::ArrayRef<clang::OMPClause*>, clang::Stmt*, clang::SourceLocation, clang::SourceLocation)::$_22 const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::CCEKind>(clang::Sema::CCEKind const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Qualifiers>(clang::Qualifiers const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::CUDAFunctionTarget>(clang::Sema::CUDAFunctionTarget const&) const
Line
Count
Source
61
5
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
5
    const StreamingDiagnostic &DB = *this;
63
5
    DB << V;
64
5
    return *this;
65
5
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TemplateArgument>(clang::TemplateArgument const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallString<128u> >(llvm::SmallString<128u> const&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DeclContext*>(clang::DeclContext* const&) const
Line
Count
Source
61
311
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
311
    const StreamingDiagnostic &DB = *this;
63
311
    DB << V;
64
311
    return *this;
65
311
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [3]>(char const (&) [3]) const
Line
Count
Source
61
7
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
7
    const StreamingDiagnostic &DB = *this;
63
7
    DB << V;
64
7
    return *this;
65
7
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXMethodDecl*>(clang::CXXMethodDecl* const&) const
Line
Count
Source
61
14
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
14
    const StreamingDiagnostic &DB = *this;
63
14
    DB << V;
64
14
    return *this;
65
14
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::WarnUnusedResultAttr const*>(clang::WarnUnusedResultAttr const* const&) const
Unexecuted instantiation: SemaStmt.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::checkMustTailAttr(clang::Stmt const*, clang::Attr const&)::FuncType::$_6>(clang::Sema::checkMustTailAttr(clang::Stmt const*, clang::Attr const&)::FuncType::$_6 const&) const
SemaStmt.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<(anonymous namespace)::BeginEndFunction>((anonymous namespace)::BeginEndFunction const&) const
Line
Count
Source
61
64
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
62
64
    const StreamingDiagnostic &DB = *this;
63
64
    DB << V;
64
64
    return *this;
65
64
  }
Unexecuted instantiation: SemaStmtAsm.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<checkExprMemoryConstraintCompat(clang::Sema&, clang::Expr*, clang::TargetInfo::ConstraintInfo&, bool)::$_2>(checkExprMemoryConstraintCompat(clang::Sema&, clang::Expr*, clang::TargetInfo::ConstraintInfo&, bool)::$_2 const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::LikelyAttr const*>(clang::LikelyAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::UnlikelyAttr const*>(clang::UnlikelyAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NamespaceDecl*>(clang::NamespaceDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NestedNameSpecifier*>(clang::NestedNameSpecifier* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ConceptDecl*>(clang::ConceptDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::VarTemplateSpecializationDecl*>(clang::VarTemplateSpecializationDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TemplateTemplateParmDecl*>(clang::TemplateTemplateParmDecl* const&) const
Unexecuted instantiation: SemaTemplate.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::CheckDependentFunctionTemplateSpecialization(clang::FunctionDecl*, clang::TemplateArgumentListInfo const&, clang::LookupResult&)::DiscardReason>(clang::Sema::CheckDependentFunctionTemplateSpecialization(clang::FunctionDecl*, clang::TemplateArgumentListInfo const&, clang::LookupResult&)::DiscardReason const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::VarTemplateDecl*>(clang::VarTemplateDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DeducedTemplateArgument>(clang::DeducedTemplateArgument const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::MSPropertyDecl*>(clang::MSPropertyDecl* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCInterfaceDecl*>(clang::ObjCInterfaceDecl* const&) const
Unexecuted instantiation: SemaType.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<(anonymous namespace)::QualifiedFunctionKind>((anonymous namespace)::QualifiedFunctionKind const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<TypeDiagSelector>(TypeDiagSelector const&) const
Unexecuted instantiation: SemaType.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<GetFullTypeForDeclarator((anonymous namespace)::TypeProcessingState&, clang::QualType, clang::TypeSourceInfo*)::$_7>(GetFullTypeForDeclarator((anonymous namespace)::TypeProcessingState&, clang::QualType, clang::TypeSourceInfo*)::$_7 const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ArrayType::ArraySizeModifier>(clang::ArrayType::ArraySizeModifier const&) const
66
67
  // It is necessary to limit this to rvalue reference to avoid calling this
68
  // function with a bitfield lvalue argument since non-const reference to
69
  // bitfield is not allowed.
70
  template <typename T, typename = typename std::enable_if<
71
                            !std::is_lvalue_reference<T>::value>::type>
72
589k
  const PartialDiagnostic &operator<<(T &&V) const {
73
589k
    const StreamingDiagnostic &DB = *this;
74
589k
    DB << std::move(V);
75
589k
    return *this;
76
589k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::StringRef, void>(llvm::StringRef&&) const
Line
Count
Source
72
3.13k
  const PartialDiagnostic &operator<<(T &&V) const {
73
3.13k
    const StreamingDiagnostic &DB = *this;
74
3.13k
    DB << std::move(V);
75
3.13k
    return *this;
76
3.13k
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXRecordDecl const*, void>(clang::CXXRecordDecl const*&&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::threadSafety::LockKind, void>(clang::threadSafety::LockKind&&) const
Line
Count
Source
72
34
  const PartialDiagnostic &operator<<(T &&V) const {
73
34
    const StreamingDiagnostic &DB = *this;
74
34
    DB << std::move(V);
75
34
    return *this;
76
34
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SourceLocation, void>(clang::SourceLocation&&) const
Line
Count
Source
72
1.91k
  const PartialDiagnostic &operator<<(T &&V) const {
73
1.91k
    const StreamingDiagnostic &DB = *this;
74
1.91k
    DB << std::move(V);
75
1.91k
    return *this;
76
1.91k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<unsigned int, void>(unsigned int&&) const
Line
Count
Source
72
62.2k
  const PartialDiagnostic &operator<<(T &&V) const {
73
62.2k
    const StreamingDiagnostic &DB = *this;
74
62.2k
    DB << std::move(V);
75
62.2k
    return *this;
76
62.2k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FixItHint, void>(clang::FixItHint&&) const
Line
Count
Source
72
120
  const PartialDiagnostic &operator<<(T &&V) const {
73
120
    const StreamingDiagnostic &DB = *this;
74
120
    DB << std::move(V);
75
120
    return *this;
76
120
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<int, void>(int&&) const
Line
Count
Source
72
61.1k
  const PartialDiagnostic &operator<<(T &&V) const {
73
61.1k
    const StreamingDiagnostic &DB = *this;
74
61.1k
    DB << std::move(V);
75
61.1k
    return *this;
76
61.1k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SourceRange, void>(clang::SourceRange&&) const
Line
Count
Source
72
127k
  const PartialDiagnostic &operator<<(T &&V) const {
73
127k
    const StreamingDiagnostic &DB = *this;
74
127k
    DB << std::move(V);
75
127k
    return *this;
76
127k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<bool, void>(bool&&) const
Line
Count
Source
72
10.5k
  const PartialDiagnostic &operator<<(T &&V) const {
73
10.5k
    const StreamingDiagnostic &DB = *this;
74
10.5k
    DB << std::move(V);
75
10.5k
    return *this;
76
10.5k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DeclarationName, void>(clang::DeclarationName&&) const
Line
Count
Source
72
41.0k
  const PartialDiagnostic &operator<<(T &&V) const {
73
41.0k
    const StreamingDiagnostic &DB = *this;
74
41.0k
    DB << std::move(V);
75
41.0k
    return *this;
76
41.0k
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AttributeDeclKind, void>(clang::AttributeDeclKind&&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >, void>(std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >&&) const
Line
Count
Source
72
4.95k
  const PartialDiagnostic &operator<<(T &&V) const {
73
4.95k
    const StreamingDiagnostic &DB = *this;
74
4.95k
    DB << std::move(V);
75
4.95k
    return *this;
76
4.95k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char const*, void>(char const*&&) const
Line
Count
Source
72
604
  const PartialDiagnostic &operator<<(T &&V) const {
73
604
    const StreamingDiagnostic &DB = *this;
74
604
    DB << std::move(V);
75
604
    return *this;
76
604
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<CastType, void>(CastType&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Expr*, void>(clang::Expr*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FunctionDecl*, void>(clang::FunctionDecl*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ConceptDecl*, void>(clang::ConceptDecl*&&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::VarDecl*, void>(clang::VarDecl*&&) const
Line
Count
Source
72
9
  const PartialDiagnostic &operator<<(T &&V) const {
73
9
    const StreamingDiagnostic &DB = *this;
74
9
    DB << std::move(V);
75
9
    return *this;
76
9
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Attr const*, void>(clang::Attr const*&&) const
Unexecuted instantiation: SemaDecl.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<CheckMultiVersionValue(clang::Sema&, clang::FunctionDecl const*)::ErrType, void>(CheckMultiVersionValue(clang::Sema&, clang::FunctionDecl const*)::ErrType&&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ValueDecl*, void>(clang::ValueDecl*&&) const
Line
Count
Source
72
274
  const PartialDiagnostic &operator<<(T &&V) const {
73
274
    const StreamingDiagnostic &DB = *this;
74
274
    DB << std::move(V);
75
274
    return *this;
76
274
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NestedNameSpecifier*, void>(clang::NestedNameSpecifier*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DeclContext*, void>(clang::DeclContext*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::RecordDecl const*, void>(clang::RecordDecl const*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<ShadowedDeclKind, void>(ShadowedDeclKind&&) const
Unexecuted instantiation: SemaDecl.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::areMultiversionVariantFunctionsCompatible(clang::FunctionDecl const*, clang::FunctionDecl const*, clang::PartialDiagnostic const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, bool, bool, bool)::DoesntSupport, void>(clang::Sema::areMultiversionVariantFunctionsCompatible(clang::FunctionDecl const*, clang::FunctionDecl const*, clang::PartialDiagnostic const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, bool, bool, bool)::DoesntSupport&&) const
Unexecuted instantiation: SemaDecl.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::areMultiversionVariantFunctionsCompatible(clang::FunctionDecl const*, clang::FunctionDecl const*, clang::PartialDiagnostic const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, bool, bool, bool)::Different, void>(clang::Sema::areMultiversionVariantFunctionsCompatible(clang::FunctionDecl const*, clang::FunctionDecl const*, clang::PartialDiagnostic const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, std::__1::pair<clang::SourceLocation, clang::PartialDiagnostic> const&, bool, bool, bool)::Different&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NamedDecl const*, void>(clang::NamedDecl const*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CUDALaunchBoundsAttr const*, void>(clang::CUDALaunchBoundsAttr const*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AMDGPUFlatWorkGroupSizeAttr const*, void>(clang::AMDGPUFlatWorkGroupSizeAttr const*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AMDGPUWavesPerEUAttr const*, void>(clang::AMDGPUWavesPerEUAttr const*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ParsedAttr const*, void>(clang::ParsedAttr const*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<AttributeLangSupport::LANG, void>(AttributeLangSupport::LANG&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TypedefNameDecl*, void>(clang::TypedefNameDecl*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AssumeAlignedAttr*, void>(clang::AssumeAlignedAttr*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AllocAlignAttr*, void>(clang::AllocAlignAttr*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AllocAlignAttr const*, void>(clang::AllocAlignAttr const*&&) const
Unexecuted instantiation: SemaDeclAttr.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::checkTargetAttr(clang::SourceLocation, llvm::StringRef)::FirstParam, void>(clang::Sema::checkTargetAttr(clang::SourceLocation, llvm::StringRef)::FirstParam&&) const
Unexecuted instantiation: SemaDeclAttr.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::checkTargetAttr(clang::SourceLocation, llvm::StringRef)::SecondParam, void>(clang::Sema::checkTargetAttr(clang::SourceLocation, llvm::StringRef)::SecondParam&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AlignValueAttr*, void>(clang::AlignValueAttr*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AlignedAttr*, void>(clang::AlignedAttr*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::InternalLinkageAttr const*, void>(clang::InternalLinkageAttr const*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SwiftNameAttr const*, void>(clang::SwiftNameAttr const*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FieldDecl*, void>(clang::FieldDecl*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AccessSpecifier, void>(clang::AccessSpecifier&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NamespaceDecl*, void>(clang::NamespaceDecl*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CanQual<clang::Type>, void>(clang::CanQual<clang::Type>&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<std::__1::pair<clang::NullabilityKind, bool>, void>(std::__1::pair<clang::NullabilityKind, bool>&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TagTypeKind, void>(clang::TagTypeKind&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ObjCMethodDecl const*, void>(clang::ObjCMethodDecl const*&&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::QualType, void>(clang::QualType&&) const
Line
Count
Source
72
264k
  const PartialDiagnostic &operator<<(T &&V) const {
73
264k
    const StreamingDiagnostic &DB = *this;
74
264k
    DB << std::move(V);
75
264k
    return *this;
76
264k
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Selector, void>(clang::Selector&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::IdentifierInfo const*, void>(clang::IdentifierInfo const*&&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::IdentifierInfo*, void>(clang::IdentifierInfo*&&) const
Line
Count
Source
72
3
  const PartialDiagnostic &operator<<(T &&V) const {
73
3
    const StreamingDiagnostic &DB = *this;
74
3
    DB << std::move(V);
75
3
    return *this;
76
3
  }
Unexecuted instantiation: SemaExpr.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<$_14, void>($_14&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::NonTagKind, void>(clang::Sema::NonTagKind&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ValueDecl const*, void>(clang::ValueDecl const*&&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::AssignmentAction, void>(clang::Sema::AssignmentAction&&) const
Line
Count
Source
72
2
  const PartialDiagnostic &operator<<(T &&V) const {
73
2
    const StreamingDiagnostic &DB = *this;
74
2
    DB << std::move(V);
75
2
    return *this;
76
2
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::tok::TokenKind, void>(clang::tok::TokenKind&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::QualType const, void>(clang::QualType const&&) const
Unexecuted instantiation: SemaOpenMP.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::checkOpenMPDeclareVariantFunction(clang::OpaquePtr<clang::DeclGroupRef>, clang::Expr*, clang::OMPTraitInfo&, clang::SourceRange)::DoesntSupport, void>(clang::Sema::checkOpenMPDeclareVariantFunction(clang::OpaquePtr<clang::DeclGroupRef>, clang::Expr*, clang::OMPTraitInfo&, clang::SourceRange)::DoesntSupport&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXRecordDecl*, void>(clang::CXXRecordDecl*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ParmVarDecl*, void>(clang::ParmVarDecl*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::LangAS, void>(clang::LangAS&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Qualifiers::ObjCLifetime, void>(clang::Qualifiers::ObjCLifetime&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Qualifiers::GC, void>(clang::Qualifiers::GC&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TemplateDecl*, void>(clang::TemplateDecl*&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::RefQualifierKind, void>(clang::RefQualifierKind&&) const
SemaOverload.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<$_0, void>($_0&&) const
Line
Count
Source
72
8.21k
  const PartialDiagnostic &operator<<(T &&V) const {
73
8.21k
    const StreamingDiagnostic &DB = *this;
74
8.21k
    DB << std::move(V);
75
8.21k
    return *this;
76
8.21k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Qualifiers, void>(clang::Qualifiers&&) const
Line
Count
Source
72
60
  const PartialDiagnostic &operator<<(T &&V) const {
73
60
    const StreamingDiagnostic &DB = *this;
74
60
    DB << std::move(V);
75
60
    return *this;
76
60
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NamedDecl*, void>(clang::NamedDecl*&&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::CXXSpecialMember, void>(clang::Sema::CXXSpecialMember&&) const
Line
Count
Source
72
2.90k
  const PartialDiagnostic &operator<<(T &&V) const {
73
2.90k
    const StreamingDiagnostic &DB = *this;
74
2.90k
    DB << std::move(V);
75
2.90k
    return *this;
76
2.90k
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::MSPropertyDecl*, void>(clang::MSPropertyDecl*&&) const
SemaStmt.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::checkMustTailAttr(clang::Stmt const*, clang::Attr const&)::$_2::operator()(clang::Sema::checkMustTailAttr(clang::Stmt const*, clang::Attr const&)::FuncType, clang::Sema::checkMustTailAttr(clang::Stmt const*, clang::Attr const&)::FuncType, clang::PartialDiagnostic&) const::$_3, void>(clang::Sema::checkMustTailAttr(clang::Stmt const*, clang::Attr const&)::$_2::operator()(clang::Sema::checkMustTailAttr(clang::Stmt const*, clang::Attr const&)::FuncType, clang::Sema::checkMustTailAttr(clang::Stmt const*, clang::Attr const&)::FuncType, clang::PartialDiagnostic&) const::$_3&&) const
Line
Count
Source
72
1
  const PartialDiagnostic &operator<<(T &&V) const {
73
1
    const StreamingDiagnostic &DB = *this;
74
1
    DB << std::move(V);
75
1
    return *this;
76
1
  }
Unexecuted instantiation: SemaStmt.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<(anonymous namespace)::BeginEndFunction, void>((anonymous namespace)::BeginEndFunction&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<TypeDiagSelector, void>(TypeDiagSelector&&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::IntegerType::'unnamed', void>(llvm::IntegerType::'unnamed'&&) const
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::CUDAFunctionTarget, void>(clang::Sema::CUDAFunctionTarget&&) const
Line
Count
Source
72
241
  const PartialDiagnostic &operator<<(T &&V) const {
73
241
    const StreamingDiagnostic &DB = *this;
74
241
    DB << std::move(V);
75
241
    return *this;
76
241
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AttributeArgumentNType, void>(clang::AttributeArgumentNType&&) const
77
78
1.64M
  PartialDiagnostic(PartialDiagnostic &&Other) : DiagID(Other.DiagID) {
79
1.64M
    Allocator = Other.Allocator;
80
1.64M
    DiagStorage = Other.DiagStorage;
81
1.64M
    Other.DiagStorage = nullptr;
82
1.64M
  }
83
84
  PartialDiagnostic(const PartialDiagnostic &Other,
85
                    DiagnosticStorage *DiagStorage_)
86
97
      : DiagID(Other.DiagID) {
87
97
    Allocator = reinterpret_cast<DiagStorageAllocator *>(~uintptr_t(0));
88
97
    DiagStorage = DiagStorage_;
89
97
    if (Other.DiagStorage)
90
2
      *this->DiagStorage = *Other.DiagStorage;
91
97
  }
92
93
  PartialDiagnostic(const Diagnostic &Other, DiagStorageAllocator &Allocator_)
94
127k
      : DiagID(Other.getID()) {
95
127k
    Allocator = &Allocator_;
96
    // Copy arguments.
97
319k
    for (unsigned I = 0, N = Other.getNumArgs(); I != N; 
++I192k
) {
98
192k
      if (Other.getArgKind(I) == DiagnosticsEngine::ak_std_string)
99
50.4k
        AddString(Other.getArgStdStr(I));
100
142k
      else
101
142k
        AddTaggedVal(Other.getRawArg(I), Other.getArgKind(I));
102
192k
    }
103
104
    // Copy source ranges.
105
248k
    for (unsigned I = 0, N = Other.getNumRanges(); I != N; 
++I121k
)
106
121k
      AddSourceRange(Other.getRange(I));
107
108
    // Copy fix-its.
109
127k
    for (unsigned I = 0, N = Other.getNumFixItHints(); I != N; 
++I85
)
110
85
      AddFixItHint(Other.getFixItHint(I));
111
127k
  }
112
113
84.4k
  PartialDiagnostic &operator=(const PartialDiagnostic &Other) {
114
84.4k
    DiagID = Other.DiagID;
115
84.4k
    if (Other.DiagStorage) {
116
5.58k
      if (!DiagStorage)
117
5.58k
        DiagStorage = getStorage();
118
119
5.58k
      *DiagStorage = *Other.DiagStorage;
120
78.8k
    } else {
121
78.8k
      freeStorage();
122
78.8k
    }
123
124
84.4k
    return *this;
125
84.4k
  }
126
127
7.00k
  PartialDiagnostic &operator=(PartialDiagnostic &&Other) {
128
7.00k
    freeStorage();
129
130
7.00k
    DiagID = Other.DiagID;
131
7.00k
    DiagStorage = Other.DiagStorage;
132
7.00k
    Allocator = Other.Allocator;
133
134
7.00k
    Other.DiagStorage = nullptr;
135
7.00k
    return *this;
136
7.00k
  }
137
138
101k
  void swap(PartialDiagnostic &PD) {
139
101k
    std::swap(DiagID, PD.DiagID);
140
101k
    std::swap(DiagStorage, PD.DiagStorage);
141
101k
    std::swap(Allocator, PD.Allocator);
142
101k
  }
143
144
1.08M
  unsigned getDiagID() const { return DiagID; }
145
41
  void setDiagID(unsigned ID) { DiagID = ID; }
146
147
107k
  void Emit(const DiagnosticBuilder &DB) const {
148
107k
    if (!DiagStorage)
149
10.3k
      return;
150
151
    // Add all arguments.
152
355k
    
for (unsigned i = 0, e = DiagStorage->NumDiagArgs; 97.4k
i != e;
++i258k
) {
153
258k
      if ((DiagnosticsEngine::ArgumentKind)DiagStorage->DiagArgumentsKind[i]
154
258k
            == DiagnosticsEngine::ak_std_string)
155
29.0k
        DB.AddString(DiagStorage->DiagArgumentsStr[i]);
156
229k
      else
157
229k
        DB.AddTaggedVal(DiagStorage->DiagArgumentsVal[i],
158
229k
            (DiagnosticsEngine::ArgumentKind)DiagStorage->DiagArgumentsKind[i]);
159
258k
    }
160
161
    // Add all ranges.
162
97.4k
    for (const CharSourceRange &Range : DiagStorage->DiagRanges)
163
125k
      DB.AddSourceRange(Range);
164
165
    // Add all fix-its.
166
97.4k
    for (const FixItHint &Fix : DiagStorage->FixItHints)
167
231
      DB.AddFixItHint(Fix);
168
97.4k
  }
169
170
  void EmitToString(DiagnosticsEngine &Diags,
171
2.44k
                    SmallVectorImpl<char> &Buf) const {
172
    // FIXME: It should be possible to render a diagnostic to a string without
173
    //        messing with the state of the diagnostics engine.
174
2.44k
    DiagnosticBuilder DB(Diags.Report(getDiagID()));
175
2.44k
    Emit(DB);
176
2.44k
    Diagnostic(&Diags).FormatDiagnostic(Buf);
177
2.44k
    DB.Clear();
178
2.44k
    Diags.Clear();
179
2.44k
  }
180
181
  /// Clear out this partial diagnostic, giving it a new diagnostic ID
182
  /// and removing all of its arguments, ranges, and fix-it hints.
183
866k
  void Reset(unsigned DiagID = 0) {
184
866k
    this->DiagID = DiagID;
185
866k
    freeStorage();
186
866k
  }
187
188
97
  bool hasStorage() const { return DiagStorage != nullptr; }
189
190
  /// Retrieve the string argument at the given index.
191
19
  StringRef getStringArg(unsigned I) {
192
19
    assert(DiagStorage && "No diagnostic storage?");
193
0
    assert(I < DiagStorage->NumDiagArgs && "Not enough diagnostic args");
194
0
    assert(DiagStorage->DiagArgumentsKind[I]
195
19
             == DiagnosticsEngine::ak_std_string && "Not a string arg");
196
0
    return DiagStorage->DiagArgumentsStr[I];
197
19
  }
198
};
199
200
inline const DiagnosticBuilder &operator<<(const DiagnosticBuilder &DB,
201
0
                                           const PartialDiagnostic &PD) {
202
0
  PD.Emit(DB);
203
0
  return DB;
204
0
}
205
206
/// A partial diagnostic along with the source location where this
207
/// diagnostic occurs.
208
using PartialDiagnosticAt = std::pair<SourceLocation, PartialDiagnostic>;
209
210
} // namespace clang
211
212
#endif // LLVM_CLANG_BASIC_PARTIALDIAGNOSTIC_H