summaryrefslogtreecommitdiffstats
path: root/util/generic/ptr.cpp
blob: 963dcd5160cf2c3818793c318af60f00f22889e9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include "ptr.h"
#include "yexception.h"

#include <util/system/defaults.h>
#include <util/memory/alloc.h>

#include <new>
#include <cstdlib>

void TFree::DoDestroy(void* t) noexcept {
    free(t);
}

void TDelete::Destroy(void* t) noexcept {
    ::operator delete(t);
}

TThrRefBase::~TThrRefBase() = default;

[[noreturn]] void NDetail::NullDerefenceThrowImpl() {
    ythrow yexception{} << "nullptr dereference";
}