Coverage Report

Created: 2022-01-18 06:27

/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 PartialDiagnostic : public StreamingDiagnostic {
32
private:
33
  // NOTE: Sema assumes that PartialDiagnostic is location-invariant
34
  // in the sense that its bits can be safely memcpy'ed and destructed
35
  // in the new location.
36
37
  /// The diagnostic ID.
38
  mutable unsigned DiagID = 0;
39
public:
40
  struct NullDiagnostic {};
41
42
  /// Create a null partial diagnostic, which cannot carry a payload,
43
  /// and only exists to be swapped with a real partial diagnostic.
44
147k
  PartialDiagnostic(NullDiagnostic) {}
45
46
  PartialDiagnostic(unsigned DiagID, DiagStorageAllocator &Allocator_)
47
3.82M
      : StreamingDiagnostic(Allocator_), DiagID(DiagID) {}
48
49
  PartialDiagnostic(const PartialDiagnostic &Other)
50
2.11M
      : StreamingDiagnostic(), DiagID(Other.DiagID) {
51
2.11M
    Allocator = Other.Allocator;
52
2.11M
    if (Other.DiagStorage) {
53
91.8k
      DiagStorage = getStorage();
54
91.8k
      *DiagStorage = *Other.DiagStorage;
55
91.8k
    }
56
2.11M
  }
57
58
1.21M
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
1.21M
    const StreamingDiagnostic &DB = *this;
60
1.21M
    DB << V;
61
1.21M
    return *this;
62
1.21M
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AccessKinds>(clang::AccessKinds const&) const
Line
Count
Source
58
1.87k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
1.87k
    const StreamingDiagnostic &DB = *this;
60
1.87k
    DB << V;
61
1.87k
    return *this;
62
1.87k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<bool>(bool const&) const
Line
Count
Source
58
184k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
184k
    const StreamingDiagnostic &DB = *this;
60
184k
    DB << V;
61
184k
    return *this;
62
184k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::QualType>(clang::QualType const&) const
Line
Count
Source
58
179k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
179k
    const StreamingDiagnostic &DB = *this;
60
179k
    DB << V;
61
179k
    return *this;
62
179k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::VarDecl const*>(clang::VarDecl const* const&) const
Line
Count
Source
58
651k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
651k
    const StreamingDiagnostic &DB = *this;
60
651k
    DB << V;
61
651k
    return *this;
62
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
58
40.7k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
40.7k
    const StreamingDiagnostic &DB = *this;
60
40.7k
    DB << V;
61
40.7k
    return *this;
62
40.7k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<int>(int const&) const
Line
Count
Source
58
5.51k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
5.51k
    const StreamingDiagnostic &DB = *this;
60
5.51k
    DB << V;
61
5.51k
    return *this;
62
5.51k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NamedDecl const*>(clang::NamedDecl const* const&) const
Line
Count
Source
58
1.81k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
1.81k
    const StreamingDiagnostic &DB = *this;
60
1.81k
    DB << V;
61
1.81k
    return *this;
62
1.81k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FieldDecl*>(clang::FieldDecl* const&) const
Line
Count
Source
58
13
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
13
    const StreamingDiagnostic &DB = *this;
60
13
    DB << V;
61
13
    return *this;
62
13
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FieldDecl const*>(clang::FieldDecl const* const&) const
Line
Count
Source
58
498
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
498
    const StreamingDiagnostic &DB = *this;
60
498
    DB << V;
61
498
    return *this;
62
498
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CheckSubobjectKind>(clang::CheckSubobjectKind const&) const
Line
Count
Source
58
183
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
183
    const StreamingDiagnostic &DB = *this;
60
183
    DB << V;
61
183
    return *this;
62
183
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<unsigned int>(unsigned int const&) const
Line
Count
Source
58
721
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
721
    const StreamingDiagnostic &DB = *this;
60
721
    DB << V;
61
721
    return *this;
62
721
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXRecordDecl const*>(clang::CXXRecordDecl const* const&) const
Line
Count
Source
58
38
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
38
    const StreamingDiagnostic &DB = *this;
60
38
    DB << V;
61
38
    return *this;
62
38
  }
ExprConstant.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<(anonymous namespace)::DynAlloc::Kind>((anonymous namespace)::DynAlloc::Kind const&) const
Line
Count
Source
58
34
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
34
    const StreamingDiagnostic &DB = *this;
60
34
    DB << V;
61
34
    return *this;
62
34
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXMethodDecl const*>(clang::CXXMethodDecl const* const&) const
Line
Count
Source
58
8
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
8
    const StreamingDiagnostic &DB = *this;
60
8
    DB << V;
61
8
    return *this;
62
8
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXRecordDecl*>(clang::CXXRecordDecl* const&) const
Line
Count
Source
58
17
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
17
    const StreamingDiagnostic &DB = *this;
60
17
    DB << V;
61
17
    return *this;
62
17
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FunctionDecl const*>(clang::FunctionDecl const* const&) const
Line
Count
Source
58
31.8k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
31.8k
    const StreamingDiagnostic &DB = *this;
60
31.8k
    DB << V;
61
31.8k
    return *this;
62
31.8k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::RecordDecl const*>(clang::RecordDecl const* const&) const
Line
Count
Source
58
8
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
8
    const StreamingDiagnostic &DB = *this;
60
8
    DB << V;
61
8
    return *this;
62
8
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AccessSpecifier>(clang::AccessSpecifier const&) const
Line
Count
Source
58
8
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
8
    const StreamingDiagnostic &DB = *this;
60
8
    DB << V;
61
8
    return *this;
62
8
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FunctionDecl*>(clang::FunctionDecl* const&) const
Line
Count
Source
58
1.49k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
1.49k
    const StreamingDiagnostic &DB = *this;
60
1.49k
    DB << V;
61
1.49k
    return *this;
62
1.49k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SourceRange>(clang::SourceRange const&) const
Line
Count
Source
58
26.2k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
26.2k
    const StreamingDiagnostic &DB = *this;
60
26.2k
    DB << V;
61
26.2k
    return *this;
62
26.2k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXConstructorDecl const*>(clang::CXXConstructorDecl const* const&) const
Line
Count
Source
58
1.23k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
1.23k
    const StreamingDiagnostic &DB = *this;
60
1.23k
    DB << V;
61
1.23k
    return *this;
62
1.23k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::StringRef>(llvm::StringRef const&) const
Line
Count
Source
58
8.97k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
8.97k
    const StreamingDiagnostic &DB = *this;
60
8.97k
    DB << V;
61
8.97k
    return *this;
62
8.97k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::ValueDecl const*>(clang::ValueDecl const* const&) const
Line
Count
Source
58
30.2k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
30.2k
    const StreamingDiagnostic &DB = *this;
60
30.2k
    DB << V;
61
30.2k
    return *this;
62
30.2k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FixItHint>(clang::FixItHint const&) const
Line
Count
Source
58
142
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
142
    const StreamingDiagnostic &DB = *this;
60
142
    DB << V;
61
142
    return *this;
62
142
  }
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
58
1.26k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
1.26k
    const StreamingDiagnostic &DB = *this;
60
1.26k
    DB << V;
61
1.26k
    return *this;
62
1.26k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallString<32u> >(llvm::SmallString<32u> const&) const
Line
Count
Source
58
34
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
34
    const StreamingDiagnostic &DB = *this;
60
34
    DB << V;
61
34
    return *this;
62
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 [86]>(char const (&) [86]) 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<<<clang::CFAuditedTransferAttr const*>(clang::CFAuditedTransferAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TargetClonesAttr const*>(clang::TargetClonesAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::TargetAttr const*>(clang::TargetAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CPUSpecificAttr const*>(clang::CPUSpecificAttr const* const&) const
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CPUDispatchAttr const*>(clang::CPUDispatchAttr 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
58
1
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
1
    const StreamingDiagnostic &DB = *this;
60
1
    DB << V;
61
1
    return *this;
62
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
58
12
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
12
    const StreamingDiagnostic &DB = *this;
60
12
    DB << V;
61
12
    return *this;
62
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
58
304
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
304
    const StreamingDiagnostic &DB = *this;
60
304
    DB << V;
61
304
    return *this;
62
304
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [11]>(char const (&) [11]) const
Line
Count
Source
58
58
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
58
    const StreamingDiagnostic &DB = *this;
60
58
    DB << V;
61
58
    return *this;
62
58
  }
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
58
487
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
487
    const StreamingDiagnostic &DB = *this;
60
487
    DB << V;
61
487
    return *this;
62
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
58
1
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
1
    const StreamingDiagnostic &DB = *this;
60
1
    DB << V;
61
1
    return *this;
62
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
58
389
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
389
    const StreamingDiagnostic &DB = *this;
60
389
    DB << V;
61
389
    return *this;
62
389
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::NamedDecl*>(clang::NamedDecl* const&) const
Line
Count
Source
58
17
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
17
    const StreamingDiagnostic &DB = *this;
60
17
    DB << V;
61
17
    return *this;
62
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
58
53
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
53
    const StreamingDiagnostic &DB = *this;
60
53
    DB << V;
61
53
    return *this;
62
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
58
3.55k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
3.55k
    const StreamingDiagnostic &DB = *this;
60
3.55k
    DB << V;
61
3.55k
    return *this;
62
3.55k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallString<4u> >(llvm::SmallString<4u> const&) const
Line
Count
Source
58
17
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
17
    const StreamingDiagnostic &DB = *this;
60
17
    DB << V;
61
17
    return *this;
62
17
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::SmallString<16u> >(llvm::SmallString<16u> const&) const
Line
Count
Source
58
508
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
508
    const StreamingDiagnostic &DB = *this;
60
508
    DB << V;
61
508
    return *this;
62
508
  }
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)::$_19>(clang::Sema::DiagnoseAlwaysNonNullPointer(clang::Expr*, clang::Expr::NullPointerConstantKind, bool, clang::SourceRange)::$_19 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::ErrorAttr*>(clang::ErrorAttr* 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
58
5
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
5
    const StreamingDiagnostic &DB = *this;
60
5
    DB << V;
61
5
    return *this;
62
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
58
34
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
34
    const StreamingDiagnostic &DB = *this;
60
34
    DB << V;
61
34
    return *this;
62
34
  }
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
58
43
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
43
    const StreamingDiagnostic &DB = *this;
60
43
    DB << V;
61
43
    return *this;
62
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::AttributeArgumentNType>(clang::AttributeArgumentNType 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
58
3
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
3
    const StreamingDiagnostic &DB = *this;
60
3
    DB << V;
61
3
    return *this;
62
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<<<unsigned long long>(unsigned long long 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::ErrorAttr const*>(clang::ErrorAttr const* 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::$_8>((anonymous namespace)::DefaultedComparisonSubobject::$_8 const&) const
Line
Count
Source
58
17
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
17
    const StreamingDiagnostic &DB = *this;
60
17
    DB << V;
61
17
    return *this;
62
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
58
58
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
58
    const StreamingDiagnostic &DB = *this;
60
58
    DB << V;
61
58
    return *this;
62
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
58
610
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
610
    const StreamingDiagnostic &DB = *this;
60
610
    DB << V;
61
610
    return *this;
62
610
  }
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
58
7.78k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
7.78k
    const StreamingDiagnostic &DB = *this;
60
7.78k
    DB << V;
61
7.78k
    return *this;
62
7.78k
  }
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
58
40
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
40
    const StreamingDiagnostic &DB = *this;
60
40
    DB << V;
61
40
    return *this;
62
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
58
31.5k
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
31.5k
    const StreamingDiagnostic &DB = *this;
60
31.5k
    DB << V;
61
31.5k
    return *this;
62
31.5k
  }
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)::$_38>(reportOriginalDsa(clang::Sema&, (anonymous namespace)::DSAStackTy const*, clang::ValueDecl const*, (anonymous namespace)::DSAStackTy::DSAVarData const&, bool)::$_38 const&) const
Unexecuted instantiation: SemaOpenMP.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<getPrivateItem(clang::Sema&, clang::Expr*&, clang::SourceLocation&, clang::SourceRange&, bool)::$_42>(getPrivateItem(clang::Sema&, clang::Expr*&, clang::SourceLocation&, clang::SourceRange&, bool)::$_42 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::OpenMPBindClauseKind, clang::SourceLocation)::$_41>(checkNestingOfRegions(clang::Sema&, (anonymous namespace)::DSAStackTy const*, llvm::omp::Directive, clang::DeclarationNameInfo const&, llvm::omp::Directive, clang::OpenMPBindClauseKind, clang::SourceLocation)::$_41 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)::$_19>(clang::Sema::ActOnOpenMPAtomicDirective(llvm::ArrayRef<clang::OMPClause*>, clang::Stmt*, clang::SourceLocation, clang::SourceLocation)::$_19 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)::$_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: 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
58
5
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
5
    const StreamingDiagnostic &DB = *this;
60
5
    DB << V;
61
5
    return *this;
62
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
58
319
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
319
    const StreamingDiagnostic &DB = *this;
60
319
    DB << V;
61
319
    return *this;
62
319
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char [3]>(char const (&) [3]) const
Line
Count
Source
58
7
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
7
    const StreamingDiagnostic &DB = *this;
60
7
    DB << V;
61
7
    return *this;
62
7
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::CXXMethodDecl*>(clang::CXXMethodDecl* const&) const
Line
Count
Source
58
14
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
14
    const StreamingDiagnostic &DB = *this;
60
14
    DB << V;
61
14
    return *this;
62
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
58
64
  template <typename T> const PartialDiagnostic &operator<<(const T &V) const {
59
64
    const StreamingDiagnostic &DB = *this;
60
64
    DB << V;
61
64
    return *this;
62
64
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::sema::FunctionScopeInfo::'unnamed'>(clang::sema::FunctionScopeInfo::'unnamed' const&) const
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
63
64
  // It is necessary to limit this to rvalue reference to avoid calling this
65
  // function with a bitfield lvalue argument since non-const reference to
66
  // bitfield is not allowed.
67
  template <typename T, typename = typename std::enable_if<
68
                            !std::is_lvalue_reference<T>::value>::type>
69
600k
  const PartialDiagnostic &operator<<(T &&V) const {
70
600k
    const StreamingDiagnostic &DB = *this;
71
600k
    DB << std::move(V);
72
600k
    return *this;
73
600k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<llvm::StringRef, void>(llvm::StringRef&&) const
Line
Count
Source
69
3.20k
  const PartialDiagnostic &operator<<(T &&V) const {
70
3.20k
    const StreamingDiagnostic &DB = *this;
71
3.20k
    DB << std::move(V);
72
3.20k
    return *this;
73
3.20k
  }
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
69
34
  const PartialDiagnostic &operator<<(T &&V) const {
70
34
    const StreamingDiagnostic &DB = *this;
71
34
    DB << std::move(V);
72
34
    return *this;
73
34
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SourceLocation, void>(clang::SourceLocation&&) const
Line
Count
Source
69
2.14k
  const PartialDiagnostic &operator<<(T &&V) const {
70
2.14k
    const StreamingDiagnostic &DB = *this;
71
2.14k
    DB << std::move(V);
72
2.14k
    return *this;
73
2.14k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<unsigned int, void>(unsigned int&&) const
Line
Count
Source
69
53.7k
  const PartialDiagnostic &operator<<(T &&V) const {
70
53.7k
    const StreamingDiagnostic &DB = *this;
71
53.7k
    DB << std::move(V);
72
53.7k
    return *this;
73
53.7k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::FixItHint, void>(clang::FixItHint&&) const
Line
Count
Source
69
121
  const PartialDiagnostic &operator<<(T &&V) const {
70
121
    const StreamingDiagnostic &DB = *this;
71
121
    DB << std::move(V);
72
121
    return *this;
73
121
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<int, void>(int&&) const
Line
Count
Source
69
59.6k
  const PartialDiagnostic &operator<<(T &&V) const {
70
59.6k
    const StreamingDiagnostic &DB = *this;
71
59.6k
    DB << std::move(V);
72
59.6k
    return *this;
73
59.6k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::SourceRange, void>(clang::SourceRange&&) const
Line
Count
Source
69
145k
  const PartialDiagnostic &operator<<(T &&V) const {
70
145k
    const StreamingDiagnostic &DB = *this;
71
145k
    DB << std::move(V);
72
145k
    return *this;
73
145k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<bool, void>(bool&&) const
Line
Count
Source
69
10.3k
  const PartialDiagnostic &operator<<(T &&V) const {
70
10.3k
    const StreamingDiagnostic &DB = *this;
71
10.3k
    DB << std::move(V);
72
10.3k
    return *this;
73
10.3k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::DeclarationName, void>(clang::DeclarationName&&) const
Line
Count
Source
69
40.8k
  const PartialDiagnostic &operator<<(T &&V) const {
70
40.8k
    const StreamingDiagnostic &DB = *this;
71
40.8k
    DB << std::move(V);
72
40.8k
    return *this;
73
40.8k
  }
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
69
4.95k
  const PartialDiagnostic &operator<<(T &&V) const {
70
4.95k
    const StreamingDiagnostic &DB = *this;
71
4.95k
    DB << std::move(V);
72
4.95k
    return *this;
73
4.95k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<char const*, void>(char const*&&) const
Line
Count
Source
69
606
  const PartialDiagnostic &operator<<(T &&V) const {
70
606
    const StreamingDiagnostic &DB = *this;
71
606
    DB << std::move(V);
72
606
    return *this;
73
606
  }
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
69
19
  const PartialDiagnostic &operator<<(T &&V) const {
70
19
    const StreamingDiagnostic &DB = *this;
71
19
    DB << std::move(V);
72
19
    return *this;
73
19
  }
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
69
274
  const PartialDiagnostic &operator<<(T &&V) const {
70
274
    const StreamingDiagnostic &DB = *this;
71
274
    DB << std::move(V);
72
274
    return *this;
73
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: SemaDeclAttr.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::checkTargetAttr(clang::SourceLocation, llvm::StringRef)::ThirdParam, void>(clang::Sema::checkTargetAttr(clang::SourceLocation, llvm::StringRef)::ThirdParam&&) const
Unexecuted instantiation: SemaDeclAttr.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::checkTargetClonesAttrString(clang::SourceLocation, llvm::StringRef, clang::StringLiteral const*, bool&, bool&, llvm::SmallVectorImpl<llvm::StringRef>&)::FirstParam, void>(clang::Sema::checkTargetClonesAttrString(clang::SourceLocation, llvm::StringRef, clang::StringLiteral const*, bool&, bool&, llvm::SmallVectorImpl<llvm::StringRef>&)::FirstParam&&) const
Unexecuted instantiation: SemaDeclAttr.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::checkTargetClonesAttrString(clang::SourceLocation, llvm::StringRef, clang::StringLiteral const*, bool&, bool&, llvm::SmallVectorImpl<llvm::StringRef>&)::SecondParam, void>(clang::Sema::checkTargetClonesAttrString(clang::SourceLocation, llvm::StringRef, clang::StringLiteral const*, bool&, bool&, llvm::SmallVectorImpl<llvm::StringRef>&)::SecondParam&&) const
Unexecuted instantiation: SemaDeclAttr.cpp:clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Sema::checkTargetClonesAttrString(clang::SourceLocation, llvm::StringRef, clang::StringLiteral const*, bool&, bool&, llvm::SmallVectorImpl<llvm::StringRef>&)::ThirdParam, void>(clang::Sema::checkTargetClonesAttrString(clang::SourceLocation, llvm::StringRef, clang::StringLiteral const*, bool&, bool&, llvm::SmallVectorImpl<llvm::StringRef>&)::ThirdParam&&) 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
69
268k
  const PartialDiagnostic &operator<<(T &&V) const {
70
268k
    const StreamingDiagnostic &DB = *this;
71
268k
    DB << std::move(V);
72
268k
    return *this;
73
268k
  }
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
69
3
  const PartialDiagnostic &operator<<(T &&V) const {
70
3
    const StreamingDiagnostic &DB = *this;
71
3
    DB << std::move(V);
72
3
    return *this;
73
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
69
2
  const PartialDiagnostic &operator<<(T &&V) const {
70
2
    const StreamingDiagnostic &DB = *this;
71
2
    DB << std::move(V);
72
2
    return *this;
73
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&, unsigned int, clang::SourceRange)::DoesntSupport, void>(clang::Sema::checkOpenMPDeclareVariantFunction(clang::OpaquePtr<clang::DeclGroupRef>, clang::Expr*, clang::OMPTraitInfo&, unsigned int, 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
69
7.37k
  const PartialDiagnostic &operator<<(T &&V) const {
70
7.37k
    const StreamingDiagnostic &DB = *this;
71
7.37k
    DB << std::move(V);
72
7.37k
    return *this;
73
7.37k
  }
clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::Qualifiers, void>(clang::Qualifiers&&) const
Line
Count
Source
69
60
  const PartialDiagnostic &operator<<(T &&V) const {
70
60
    const StreamingDiagnostic &DB = *this;
71
60
    DB << std::move(V);
72
60
    return *this;
73
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
69
2.54k
  const PartialDiagnostic &operator<<(T &&V) const {
70
2.54k
    const StreamingDiagnostic &DB = *this;
71
2.54k
    DB << std::move(V);
72
2.54k
    return *this;
73
2.54k
  }
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
69
1
  const PartialDiagnostic &operator<<(T &&V) const {
70
1
    const StreamingDiagnostic &DB = *this;
71
1
    DB << std::move(V);
72
1
    return *this;
73
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
69
117
  const PartialDiagnostic &operator<<(T &&V) const {
70
117
    const StreamingDiagnostic &DB = *this;
71
117
    DB << std::move(V);
72
117
    return *this;
73
117
  }
Unexecuted instantiation: clang::PartialDiagnostic const& clang::PartialDiagnostic::operator<<<clang::AttributeArgumentNType, void>(clang::AttributeArgumentNType&&) const
74
75
1.70M
  PartialDiagnostic(PartialDiagnostic &&Other) : DiagID(Other.DiagID) {
76
1.70M
    Allocator = Other.Allocator;
77
1.70M
    DiagStorage = Other.DiagStorage;
78
1.70M
    Other.DiagStorage = nullptr;
79
1.70M
  }
80
81
  PartialDiagnostic(const PartialDiagnostic &Other,
82
                    DiagnosticStorage *DiagStorage_)
83
97
      : DiagID(Other.DiagID) {
84
97
    Allocator = reinterpret_cast<DiagStorageAllocator *>(~uintptr_t(0));
85
97
    DiagStorage = DiagStorage_;
86
97
    if (Other.DiagStorage)
87
2
      *this->DiagStorage = *Other.DiagStorage;
88
97
  }
89
90
  PartialDiagnostic(const Diagnostic &Other, DiagStorageAllocator &Allocator_)
91
145k
      : DiagID(Other.getID()) {
92
145k
    Allocator = &Allocator_;
93
    // Copy arguments.
94
323k
    for (unsigned I = 0, N = Other.getNumArgs(); I != N; 
++I177k
) {
95
177k
      if (Other.getArgKind(I) == DiagnosticsEngine::ak_std_string)
96
68.3k
        AddString(Other.getArgStdStr(I));
97
109k
      else
98
109k
        AddTaggedVal(Other.getRawArg(I), Other.getArgKind(I));
99
177k
    }
100
101
    // Copy source ranges.
102
280k
    for (unsigned I = 0, N = Other.getNumRanges(); I != N; 
++I134k
)
103
134k
      AddSourceRange(Other.getRange(I));
104
105
    // Copy fix-its.
106
145k
    for (unsigned I = 0, N = Other.getNumFixItHints(); I != N; 
++I85
)
107
85
      AddFixItHint(Other.getFixItHint(I));
108
145k
  }
109
110
83.9k
  PartialDiagnostic &operator=(const PartialDiagnostic &Other) {
111
83.9k
    DiagID = Other.DiagID;
112
83.9k
    if (Other.DiagStorage) {
113
4.82k
      if (!DiagStorage)
114
4.82k
        DiagStorage = getStorage();
115
116
4.82k
      *DiagStorage = *Other.DiagStorage;
117
79.1k
    } else {
118
79.1k
      freeStorage();
119
79.1k
    }
120
121
83.9k
    return *this;
122
83.9k
  }
123
124
6.66k
  PartialDiagnostic &operator=(PartialDiagnostic &&Other) {
125
6.66k
    freeStorage();
126
127
6.66k
    DiagID = Other.DiagID;
128
6.66k
    DiagStorage = Other.DiagStorage;
129
6.66k
    Allocator = Other.Allocator;
130
131
6.66k
    Other.DiagStorage = nullptr;
132
6.66k
    return *this;
133
6.66k
  }
134
135
143k
  void swap(PartialDiagnostic &PD) {
136
143k
    std::swap(DiagID, PD.DiagID);
137
143k
    std::swap(DiagStorage, PD.DiagStorage);
138
143k
    std::swap(Allocator, PD.Allocator);
139
143k
  }
140
141
1.10M
  unsigned getDiagID() const { return DiagID; }
142
41
  void setDiagID(unsigned ID) { DiagID = ID; }
143
144
97.6k
  void Emit(const DiagnosticBuilder &DB) const {
145
97.6k
    if (!DiagStorage)
146
10.6k
      return;
147
148
    // Add all arguments.
149
308k
    
for (unsigned i = 0, e = DiagStorage->NumDiagArgs; 86.9k
i != e;
++i221k
) {
150
221k
      if ((DiagnosticsEngine::ArgumentKind)DiagStorage->DiagArgumentsKind[i]
151
221k
            == DiagnosticsEngine::ak_std_string)
152
27.1k
        DB.AddString(DiagStorage->DiagArgumentsStr[i]);
153
193k
      else
154
193k
        DB.AddTaggedVal(DiagStorage->DiagArgumentsVal[i],
155
193k
            (DiagnosticsEngine::ArgumentKind)DiagStorage->DiagArgumentsKind[i]);
156
221k
    }
157
158
    // Add all ranges.
159
86.9k
    for (const CharSourceRange &Range : DiagStorage->DiagRanges)
160
113k
      DB.AddSourceRange(Range);
161
162
    // Add all fix-its.
163
86.9k
    for (const FixItHint &Fix : DiagStorage->FixItHints)
164
233
      DB.AddFixItHint(Fix);
165
86.9k
  }
166
167
  void EmitToString(DiagnosticsEngine &Diags,
168
2.43k
                    SmallVectorImpl<char> &Buf) const {
169
    // FIXME: It should be possible to render a diagnostic to a string without
170
    //        messing with the state of the diagnostics engine.
171
2.43k
    DiagnosticBuilder DB(Diags.Report(getDiagID()));
172
2.43k
    Emit(DB);
173
2.43k
    Diagnostic(&Diags).FormatDiagnostic(Buf);
174
2.43k
    DB.Clear();
175
2.43k
    Diags.Clear();
176
2.43k
  }
177
178
  /// Clear out this partial diagnostic, giving it a new diagnostic ID
179
  /// and removing all of its arguments, ranges, and fix-it hints.
180
876k
  void Reset(unsigned DiagID = 0) {
181
876k
    this->DiagID = DiagID;
182
876k
    freeStorage();
183
876k
  }
184
185
97
  bool hasStorage() const { return DiagStorage != nullptr; }
186
187
  /// Retrieve the string argument at the given index.
188
85
  StringRef getStringArg(unsigned I) {
189
85
    assert(DiagStorage && "No diagnostic storage?");
190
0
    assert(I < DiagStorage->NumDiagArgs && "Not enough diagnostic args");
191
0
    assert(DiagStorage->DiagArgumentsKind[I]
192
85
             == DiagnosticsEngine::ak_std_string && "Not a string arg");
193
0
    return DiagStorage->DiagArgumentsStr[I];
194
85
  }
195
};
196
197
inline const DiagnosticBuilder &operator<<(const DiagnosticBuilder &DB,
198
0
                                           const PartialDiagnostic &PD) {
199
0
  PD.Emit(DB);
200
0
  return DB;
201
0
}
202
203
/// A partial diagnostic along with the source location where this
204
/// diagnostic occurs.
205
using PartialDiagnosticAt = std::pair<SourceLocation, PartialDiagnostic>;
206
207
} // namespace clang
208
209
#endif // LLVM_CLANG_BASIC_PARTIALDIAGNOSTIC_H