Coverage Report

Created: 2018-09-25 14:53

/work/obj-fuzz/dist/include/mozilla/DebugOnly.h
Line
Count
Source (jump to first uncovered line)
1
/* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2
/* vim: set ts=8 sts=2 et sw=2 tw=80: */
3
/* This Source Code Form is subject to the terms of the Mozilla Public
4
 * License, v. 2.0. If a copy of the MPL was not distributed with this
5
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
6
7
/*
8
 * Provides DebugOnly, a type for variables used only in debug builds (i.e. by
9
 * assertions).
10
 */
11
12
#ifndef mozilla_DebugOnly_h
13
#define mozilla_DebugOnly_h
14
15
#include "mozilla/Attributes.h"
16
17
namespace mozilla {
18
19
/**
20
 * DebugOnly contains a value of type T, but only in debug builds.  In release
21
 * builds, it does not contain a value.  This helper is intended to be used with
22
 * MOZ_ASSERT()-style macros, allowing one to write:
23
 *
24
 *   DebugOnly<bool> check = func();
25
 *   MOZ_ASSERT(check);
26
 *
27
 * more concisely than declaring |check| conditional on #ifdef DEBUG.
28
 *
29
 * DebugOnly instances can only be coerced to T in debug builds.  In release
30
 * builds they don't have a value, so type coercion is not well defined.
31
 *
32
 * NOTE: DebugOnly instances still take up one byte of space, plus padding, even
33
 * in optimized, non-DEBUG builds (see bug 1253094 comment 37 for more info).
34
 * For this reason the class is MOZ_STACK_CLASS to prevent consumers using
35
 * DebugOnly for struct/class members and unwittingly inflating the size of
36
 * their objects in release builds.
37
 */
38
template<typename T>
39
class MOZ_STACK_CLASS DebugOnly
40
{
41
public:
42
#ifdef DEBUG
43
  T value;
44
45
  DebugOnly() { }
46
  MOZ_IMPLICIT DebugOnly(const T& aOther) : value(aOther) { }
47
  DebugOnly(const DebugOnly& aOther) : value(aOther.value) { }
48
  DebugOnly& operator=(const T& aRhs) {
49
    value = aRhs;
50
    return *this;
51
  }
52
53
  void operator++(int) { value++; }
54
  void operator--(int) { value--; }
55
56
  // Do not define operator+=(), etc. here.  These will coerce via the
57
  // implicit cast and built-in operators.  Defining explicit methods here
58
  // will create ambiguity the compiler can't deal with.
59
60
  T* operator&() { return &value; }
61
62
  operator T&() { return value; }
63
  operator const T&() const { return value; }
64
65
  T& operator->() { return value; }
66
  const T& operator->() const { return value; }
67
68
#else
69
831
  DebugOnly() { }
Unexecuted instantiation: mozilla::DebugOnly<bool>::DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsresult>::DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIMIMEInputStream> >::DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::gfx::BaseMatrix<float> >::DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::image::WriteState>::DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsTString<char> >::DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsTString<char16_t> >::DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::ErrorResult>::DebugOnly()
mozilla::DebugOnly<unsigned int>::DebugOnly()
Line
Count
Source
69
830
  DebugOnly() { }
Unexecuted instantiation: mozilla::DebugOnly<nsIContent*>::DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<int>::DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<unsigned long>::DebugOnly()
mozilla::DebugOnly<js::AutoEnterOOMUnsafeRegion>::DebugOnly()
Line
Count
Source
69
1
  DebugOnly() { }
70
23.3M
  MOZ_IMPLICIT DebugOnly(const T&) { }
mozilla::DebugOnly<bool>::DebugOnly(bool const&)
Line
Count
Source
70
1.36M
  MOZ_IMPLICIT DebugOnly(const T&) { }
Unexecuted instantiation: mozilla::DebugOnly<mozilla::detail::LogFile*>::DebugOnly(mozilla::detail::LogFile* const&)
Unexecuted instantiation: mozilla::DebugOnly<js::gc::Cell*>::DebugOnly(js::gc::Cell* const&)
mozilla::DebugOnly<nsresult>::DebugOnly(nsresult const&)
Line
Count
Source
70
149
  MOZ_IMPLICIT DebugOnly(const T&) { }
Unexecuted instantiation: mozilla::DebugOnly<unsigned char const*>::DebugOnly(unsigned char const* const&)
mozilla::DebugOnly<unsigned int>::DebugOnly(unsigned int const&)
Line
Count
Source
70
11.9k
  MOZ_IMPLICIT DebugOnly(const T&) { }
Unexecuted instantiation: mozilla::DebugOnly<mozilla::ipc::FileDescriptor*>::DebugOnly(mozilla::ipc::FileDescriptor* const&)
Unexecuted instantiation: mozilla::DebugOnly<PRThread*>::DebugOnly(PRThread* const&)
Unexecuted instantiation: mozilla::DebugOnly<PRStatus>::DebugOnly(PRStatus const&)
Unexecuted instantiation: mozilla::DebugOnly<int>::DebugOnly(int const&)
Unexecuted instantiation: mozilla::DebugOnly<IPC::Channel::Listener*>::DebugOnly(IPC::Channel::Listener* const&)
mozilla::DebugOnly<XPCCallContext*>::DebugOnly(XPCCallContext* const&)
Line
Count
Source
70
16.2M
  MOZ_IMPLICIT DebugOnly(const T&) { }
mozilla::DebugOnly<jsid>::DebugOnly(jsid const&)
Line
Count
Source
70
3.24M
  MOZ_IMPLICIT DebugOnly(const T&) { }
mozilla::DebugOnly<js::Class const*>::DebugOnly(js::Class const* const&)
Line
Count
Source
70
6
  MOZ_IMPLICIT DebugOnly(const T&) { }
mozilla::DebugOnly<JS::Compartment*>::DebugOnly(JS::Compartment* const&)
Line
Count
Source
70
36
  MOZ_IMPLICIT DebugOnly(const T&) { }
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIEventTarget> >::DebugOnly(nsCOMPtr<nsIEventTarget> const&)
Unexecuted instantiation: mozilla::DebugOnly<mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> >::DebugOnly(mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> const&)
Unexecuted instantiation: mozilla::DebugOnly<std::__1::pair<std::__1::__map_iterator<std::__1::__tree_iterator<std::__1::__value_type<unsigned int, mozilla::layers::APZTestData::Bucket>, std::__1::__tree_node<std::__1::__value_type<unsigned int, mozilla::layers::APZTestData::Bucket>, void*>*, long> >, bool> >::DebugOnly(std::__1::pair<std::__1::__map_iterator<std::__1::__tree_iterator<std::__1::__value_type<unsigned int, mozilla::layers::APZTestData::Bucket>, std::__1::__tree_node<std::__1::__value_type<unsigned int, mozilla::layers::APZTestData::Bucket>, void*>*, long> >, bool> const&)
Unexecuted instantiation: mozilla::DebugOnly<mozilla::gfx::PathBuilder*>::DebugOnly(mozilla::gfx::PathBuilder* const&)
Unexecuted instantiation: mozilla::DebugOnly<char16_t>::DebugOnly(char16_t const&)
Unexecuted instantiation: mozilla::DebugOnly<mozilla::gfx::VRManagerChild::FrameRequest*>::DebugOnly(mozilla::gfx::VRManagerChild::FrameRequest* const&)
Unexecuted instantiation: mozilla::DebugOnly<nsCacheableFuncStringContentList::ContentListType>::DebugOnly(nsCacheableFuncStringContentList::ContentListType const&)
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIHTMLDocument> >::DebugOnly(nsCOMPtr<nsIHTMLDocument> const&)
Unexecuted instantiation: mozilla::DebugOnly<void*>::DebugOnly(void* const&)
Unexecuted instantiation: mozilla::DebugOnly<nsINode*>::DebugOnly(nsINode* const&)
Unexecuted instantiation: mozilla::DebugOnly<nsIDocument::FrameRequest*>::DebugOnly(nsIDocument::FrameRequest* const&)
Unexecuted instantiation: mozilla::DebugOnly<mozilla::dom::DOMIfaceAndProtoJSClass const*>::DebugOnly(mozilla::dom::DOMIfaceAndProtoJSClass const* const&)
Unexecuted instantiation: mozilla::DebugOnly<nsISerialEventTarget*>::DebugOnly(nsISerialEventTarget* const&)
mozilla::DebugOnly<unsigned long>::DebugOnly(unsigned long const&)
Line
Count
Source
70
779k
  MOZ_IMPLICIT DebugOnly(const T&) { }
Unexecuted instantiation: mozilla::DebugOnly<nsIContent*>::DebugOnly(nsIContent* const&)
Unexecuted instantiation: mozilla::DebugOnly<mozilla::dom::Element*>::DebugOnly(mozilla::dom::Element* const&)
Unexecuted instantiation: mozilla::DebugOnly<JSObject*>::DebugOnly(JSObject* const&)
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIDOMWindow> >::DebugOnly(nsCOMPtr<nsIDOMWindow> const&)
Unexecuted instantiation: mozilla::DebugOnly<mozilla::TimeStamp>::DebugOnly(mozilla::TimeStamp const&)
Unexecuted instantiation: mozilla::DebugOnly<long>::DebugOnly(long const&)
Unexecuted instantiation: mozilla::DebugOnly<nsIThread*>::DebugOnly(nsIThread* const&)
Unexecuted instantiation: mozilla::DebugOnly<nsXBLPrototypeBinding*>::DebugOnly(nsXBLPrototypeBinding* const&)
Unexecuted instantiation: mozilla::DebugOnly<mozilla::WidgetKeyboardEvent>::DebugOnly(mozilla::WidgetKeyboardEvent const&)
Unexecuted instantiation: mozilla::DebugOnly<nsIFrame*>::DebugOnly(nsIFrame* const&)
Unexecuted instantiation: mozilla::DebugOnly<nsRect*>::DebugOnly(nsRect* const&)
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIWeakReference> >::DebugOnly(nsCOMPtr<nsIWeakReference> const&)
Unexecuted instantiation: mozilla::DebugOnly<nsGridContainerFrame*>::DebugOnly(nsGridContainerFrame* const&)
Unexecuted instantiation: mozilla::DebugOnly<mozilla::a11y::Accessible*>::DebugOnly(mozilla::a11y::Accessible* const&)
Unexecuted instantiation: mozilla::DebugOnly<mozilla::Result<mozilla::Ok, nsresult> >::DebugOnly(mozilla::Result<mozilla::Ok, nsresult> const&)
Unexecuted instantiation: mozilla::DebugOnly<MessageLoop*>::DebugOnly(MessageLoop* const&)
Unexecuted instantiation: mozilla::DebugOnly<unsigned char>::DebugOnly(unsigned char const&)
Unexecuted instantiation: mozilla::DebugOnly<js::CrossCompartmentKey const>::DebugOnly(js::CrossCompartmentKey const&)
Unexecuted instantiation: mozilla::DebugOnly<js::jit::LDefinition*>::DebugOnly(js::jit::LDefinition* const&)
mozilla::DebugOnly<JSOp>::DebugOnly(JSOp const&)
Line
Count
Source
70
28.0k
  MOZ_IMPLICIT DebugOnly(const T&) { }
mozilla::DebugOnly<JSContext*>::DebugOnly(JSContext* const&)
Line
Count
Source
70
1.19k
  MOZ_IMPLICIT DebugOnly(const T&) { }
mozilla::DebugOnly<js::jit::LAllocation*>::DebugOnly(js::jit::LAllocation* const&)
Line
Count
Source
70
14
  MOZ_IMPLICIT DebugOnly(const T&) { }
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MWasmLoadGlobalCell*>::DebugOnly(js::jit::MWasmLoadGlobalCell* const&)
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MIRType>::DebugOnly(js::jit::MIRType const&)
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MCompare::CompareType>::DebugOnly(js::jit::MCompare::CompareType const&)
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MDefinition*>::DebugOnly(js::jit::MDefinition* const&)
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MToFPInstruction::ConversionKind>::DebugOnly(js::jit::MToFPInstruction::ConversionKind const&)
Unexecuted instantiation: mozilla::DebugOnly<js::jit::IntConversionInputKind>::DebugOnly(js::jit::IntConversionInputKind const&)
Unexecuted instantiation: mozilla::DebugOnly<js::jit::Register>::DebugOnly(js::jit::Register const&)
Unexecuted instantiation: mozilla::DebugOnly<JS::Handle<js::GlobalObject*> >::DebugOnly(JS::Handle<js::GlobalObject*> const&)
Unexecuted instantiation: mozilla::DebugOnly<js::ReadBarriered<js::Debugger*>*>::DebugOnly(js::ReadBarriered<js::Debugger*>* const&)
Unexecuted instantiation: mozilla::DebugOnly<js::Shape*>::DebugOnly(js::Shape* const&)
Unexecuted instantiation: mozilla::DebugOnly<JS::Symbol*>::DebugOnly(JS::Symbol* const&)
Unexecuted instantiation: mozilla::DebugOnly<js::wasm::BaseCompiler::Stk::Kind>::DebugOnly(js::wasm::BaseCompiler::Stk::Kind const&)
Unexecuted instantiation: mozilla::DebugOnly<js::wasm::CodeRange>::DebugOnly(js::wasm::CodeRange const&)
mozilla::DebugOnly<js::frontend::ParseNode*>::DebugOnly(js::frontend::ParseNode* const&)
Line
Count
Source
70
7
  MOZ_IMPLICIT DebugOnly(const T&) { }
mozilla::DebugOnly<js::gc::Cell const*>::DebugOnly(js::gc::Cell const* const&)
Line
Count
Source
70
1.63M
  MOZ_IMPLICIT DebugOnly(const T&) { }
Unexecuted instantiation: mozilla::DebugOnly<JSRuntime*>::DebugOnly(JSRuntime* const&)
mozilla::DebugOnly<unsigned char*>::DebugOnly(unsigned char* const&)
Line
Count
Source
70
14
  MOZ_IMPLICIT DebugOnly(const T&) { }
Unexecuted instantiation: mozilla::DebugOnly<js::jit::CodeOffset>::DebugOnly(js::jit::CodeOffset const&)
71
0
  DebugOnly(const DebugOnly&) { }
72
253k
  DebugOnly& operator=(const T&) { return *this; }
mozilla::DebugOnly<nsresult>::operator=(nsresult const&)
Line
Count
Source
72
3
  DebugOnly& operator=(const T&) { return *this; }
mozilla::DebugOnly<bool>::operator=(bool const&)
Line
Count
Source
72
253k
  DebugOnly& operator=(const T&) { return *this; }
Unexecuted instantiation: mozilla::DebugOnly<mozilla::image::WriteState>::operator=(mozilla::image::WriteState const&)
Unexecuted instantiation: mozilla::DebugOnly<long>::operator=(long const&)
Unexecuted instantiation: mozilla::DebugOnly<nsIContent*>::operator=(nsIContent* const&)
Unexecuted instantiation: mozilla::DebugOnly<nsGridContainerFrame*>::operator=(nsGridContainerFrame* const&)
Unexecuted instantiation: mozilla::DebugOnly<unsigned long>::operator=(unsigned long const&)
Unexecuted instantiation: mozilla::DebugOnly<unsigned int>::operator=(unsigned int const&)
mozilla::DebugOnly<unsigned char*>::operator=(unsigned char* const&)
Line
Count
Source
72
6
  DebugOnly& operator=(const T&) { return *this; }
73
0
  void operator++(int) { }
Unexecuted instantiation: mozilla::DebugOnly<unsigned int>::operator++(int)
Unexecuted instantiation: mozilla::DebugOnly<int>::operator++(int)
74
  void operator--(int) { }
75
0
  DebugOnly& operator+=(const T&) { return *this; }
76
  DebugOnly& operator-=(const T&) { return *this; }
77
  DebugOnly& operator&=(const T&) { return *this; }
78
0
  DebugOnly& operator|=(const T&) { return *this; }
Unexecuted instantiation: mozilla::DebugOnly<unsigned int>::operator|=(unsigned int const&)
Unexecuted instantiation: mozilla::DebugOnly<bool>::operator|=(bool const&)
79
  DebugOnly& operator^=(const T&) { return *this; }
80
#endif
81
82
  /*
83
   * DebugOnly must always have a destructor or else it will
84
   * generate "unused variable" warnings, exactly what it's intended
85
   * to avoid!
86
   */
87
23.3M
  ~DebugOnly() {}
mozilla::DebugOnly<bool>::~DebugOnly()
Line
Count
Source
87
1.36M
  ~DebugOnly() {}
Unexecuted instantiation: mozilla::DebugOnly<mozilla::detail::LogFile*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::gc::Cell*>::~DebugOnly()
mozilla::DebugOnly<nsresult>::~DebugOnly()
Line
Count
Source
87
149
  ~DebugOnly() {}
Unexecuted instantiation: mozilla::DebugOnly<unsigned char const*>::~DebugOnly()
mozilla::DebugOnly<unsigned int>::~DebugOnly()
Line
Count
Source
87
12.8k
  ~DebugOnly() {}
Unexecuted instantiation: mozilla::DebugOnly<mozilla::ipc::FileDescriptor*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIMIMEInputStream> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<PRThread*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<PRStatus>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<int>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<IPC::Channel::Listener*>::~DebugOnly()
mozilla::DebugOnly<XPCCallContext*>::~DebugOnly()
Line
Count
Source
87
16.2M
  ~DebugOnly() {}
mozilla::DebugOnly<jsid>::~DebugOnly()
Line
Count
Source
87
3.24M
  ~DebugOnly() {}
mozilla::DebugOnly<js::Class const*>::~DebugOnly()
Line
Count
Source
87
6
  ~DebugOnly() {}
mozilla::DebugOnly<JS::Compartment*>::~DebugOnly()
Line
Count
Source
87
36
  ~DebugOnly() {}
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIEventTarget> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::gfx::PointTyped<mozilla::gfx::UnknownUnits, float> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::gfx::BaseMatrix<float> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<std::__1::pair<std::__1::__map_iterator<std::__1::__tree_iterator<std::__1::__value_type<unsigned int, mozilla::layers::APZTestData::Bucket>, std::__1::__tree_node<std::__1::__value_type<unsigned int, mozilla::layers::APZTestData::Bucket>, void*>*, long> >, bool> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::gfx::PathBuilder*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<char16_t>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::gfx::VRManagerChild::FrameRequest*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::image::WriteState>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsCacheableFuncStringContentList::ContentListType>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIHTMLDocument> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<void*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsINode*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsIDocument::FrameRequest*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::dom::DOMIfaceAndProtoJSClass const*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsISerialEventTarget*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsTString<char> >::~DebugOnly()
mozilla::DebugOnly<unsigned long>::~DebugOnly()
Line
Count
Source
87
779k
  ~DebugOnly() {}
Unexecuted instantiation: mozilla::DebugOnly<nsIContent*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::dom::Element*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<JSObject*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIDOMWindow> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::TimeStamp>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<long>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsIThread*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsTString<char16_t> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::ErrorResult>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsXBLPrototypeBinding*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::WidgetKeyboardEvent>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsIFrame*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsRect*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsCOMPtr<nsIWeakReference> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<nsGridContainerFrame*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::a11y::Accessible*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<mozilla::Result<mozilla::Ok, nsresult> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<MessageLoop*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<unsigned char>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::CrossCompartmentKey const>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::jit::LDefinition*>::~DebugOnly()
mozilla::DebugOnly<JSOp>::~DebugOnly()
Line
Count
Source
87
28.0k
  ~DebugOnly() {}
mozilla::DebugOnly<JSContext*>::~DebugOnly()
Line
Count
Source
87
1.19k
  ~DebugOnly() {}
mozilla::DebugOnly<js::jit::LAllocation*>::~DebugOnly()
Line
Count
Source
87
14
  ~DebugOnly() {}
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MWasmLoadGlobalCell*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MIRType>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MCompare::CompareType>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MDefinition*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::jit::MToFPInstruction::ConversionKind>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::jit::IntConversionInputKind>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::jit::Register>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<JS::Handle<js::GlobalObject*> >::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::ReadBarriered<js::Debugger*>*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::Shape*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<JS::Symbol*>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::wasm::BaseCompiler::Stk::Kind>::~DebugOnly()
Unexecuted instantiation: mozilla::DebugOnly<js::wasm::CodeRange>::~DebugOnly()
mozilla::DebugOnly<js::frontend::ParseNode*>::~DebugOnly()
Line
Count
Source
87
7
  ~DebugOnly() {}
mozilla::DebugOnly<js::gc::Cell const*>::~DebugOnly()
Line
Count
Source
87
1.63M
  ~DebugOnly() {}
mozilla::DebugOnly<js::AutoEnterOOMUnsafeRegion>::~DebugOnly()
Line
Count
Source
87
1
  ~DebugOnly() {}
Unexecuted instantiation: mozilla::DebugOnly<JSRuntime*>::~DebugOnly()
mozilla::DebugOnly<unsigned char*>::~DebugOnly()
Line
Count
Source
87
14
  ~DebugOnly() {}
Unexecuted instantiation: mozilla::DebugOnly<js::jit::CodeOffset>::~DebugOnly()
88
};
89
90
} // namespace mozilla
91
92
#endif /* mozilla_DebugOnly_h */