Skip to content

Commit 4fa3019

Browse files
committed
Add SNMALLOC_EXPORT annotation to c++ allocator functions.
1 parent 4a1b73d commit 4fa3019

1 file changed

Lines changed: 20 additions & 18 deletions

File tree

src/snmalloc/override/new.cc

Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
#include "snmalloc/snmalloc.h"
22

3+
#include "override.h"
4+
35
#include <new>
46

57
#ifdef _WIN32
@@ -96,99 +98,99 @@ namespace snmalloc
9698
}
9799
} // namespace snmalloc
98100

99-
void* operator new(size_t size)
101+
SNMALLOC_EXPORT void* operator new(size_t size)
100102
{
101103
return snmalloc::alloc<snmalloc::handler::Throw>(size);
102104
}
103105

104-
void* operator new[](size_t size)
106+
SNMALLOC_EXPORT void* operator new[](size_t size)
105107
{
106108
return snmalloc::alloc<snmalloc::handler::Throw>(size);
107109
}
108110

109-
void* operator new(size_t size, const std::nothrow_t&) noexcept
111+
SNMALLOC_EXPORT void* operator new(size_t size, const std::nothrow_t&) noexcept
110112
{
111113
return snmalloc::alloc<snmalloc::handler::NoThrow>(size);
112114
}
113115

114-
void* operator new[](size_t size, const std::nothrow_t&) noexcept
116+
SNMALLOC_EXPORT void* operator new[](size_t size, const std::nothrow_t&) noexcept
115117
{
116118
return snmalloc::alloc<snmalloc::handler::NoThrow>(size);
117119
}
118120

119-
void operator delete(void* p) EXCEPTSPEC
121+
SNMALLOC_EXPORT void operator delete(void* p) EXCEPTSPEC
120122
{
121123
snmalloc::libc::free(p);
122124
}
123125

124-
void operator delete(void* p, size_t size) EXCEPTSPEC
126+
SNMALLOC_EXPORT void operator delete(void* p, size_t size) EXCEPTSPEC
125127
{
126128
snmalloc::libc::free_sized(p, size);
127129
}
128130

129-
void operator delete(void* p, const std::nothrow_t&) noexcept
131+
SNMALLOC_EXPORT void operator delete(void* p, const std::nothrow_t&) noexcept
130132
{
131133
snmalloc::libc::free(p);
132134
}
133135

134-
void operator delete[](void* p) EXCEPTSPEC
136+
SNMALLOC_EXPORT void operator delete[](void* p) EXCEPTSPEC
135137
{
136138
snmalloc::libc::free(p);
137139
}
138140

139-
void operator delete[](void* p, size_t size) EXCEPTSPEC
141+
SNMALLOC_EXPORT void operator delete[](void* p, size_t size) EXCEPTSPEC
140142
{
141143
snmalloc::libc::free_sized(p, size);
142144
}
143145

144-
void operator delete[](void* p, const std::nothrow_t&) noexcept
146+
SNMALLOC_EXPORT void operator delete[](void* p, const std::nothrow_t&) noexcept
145147
{
146148
snmalloc::libc::free(p);
147149
}
148150

149-
void* operator new(size_t size, std::align_val_t val)
151+
SNMALLOC_EXPORT void* operator new(size_t size, std::align_val_t val)
150152
{
151153
size = snmalloc::aligned_size(size_t(val), size);
152154
return snmalloc::alloc<snmalloc::handler::Throw>(size);
153155
}
154156

155-
void* operator new[](size_t size, std::align_val_t val)
157+
SNMALLOC_EXPORT void* operator new[](size_t size, std::align_val_t val)
156158
{
157159
size = snmalloc::aligned_size(size_t(val), size);
158160
return snmalloc::alloc<snmalloc::handler::Throw>(size);
159161
}
160162

161-
void* operator new(
163+
SNMALLOC_EXPORT void* operator new(
162164
size_t size, std::align_val_t val, const std::nothrow_t&) noexcept
163165
{
164166
size = snmalloc::aligned_size(size_t(val), size);
165167
return snmalloc::alloc<snmalloc::handler::NoThrow>(size);
166168
}
167169

168-
void* operator new[](
170+
SNMALLOC_EXPORT void* operator new[](
169171
size_t size, std::align_val_t val, const std::nothrow_t&) noexcept
170172
{
171173
size = snmalloc::aligned_size(size_t(val), size);
172174
return snmalloc::alloc<snmalloc::handler::NoThrow>(size);
173175
}
174176

175-
void operator delete(void* p, std::align_val_t) EXCEPTSPEC
177+
SNMALLOC_EXPORT void operator delete(void* p, std::align_val_t) EXCEPTSPEC
176178
{
177179
snmalloc::libc::free(p);
178180
}
179181

180-
void operator delete[](void* p, std::align_val_t) EXCEPTSPEC
182+
SNMALLOC_EXPORT void operator delete[](void* p, std::align_val_t) EXCEPTSPEC
181183
{
182184
snmalloc::libc::free(p);
183185
}
184186

185-
void operator delete(void* p, size_t size, std::align_val_t val) EXCEPTSPEC
187+
SNMALLOC_EXPORT void operator delete(void* p, size_t size, std::align_val_t val) EXCEPTSPEC
186188
{
187189
size = snmalloc::aligned_size(size_t(val), size);
188190
snmalloc::libc::free_sized(p, size);
189191
}
190192

191-
void operator delete[](void* p, size_t size, std::align_val_t val) EXCEPTSPEC
193+
SNMALLOC_EXPORT void operator delete[](void* p, size_t size, std::align_val_t val) EXCEPTSPEC
192194
{
193195
size = snmalloc::aligned_size(size_t(val), size);
194196
snmalloc::libc::free_sized(p, size);

0 commit comments

Comments
 (0)