[#BloombergLP-balst-StackTraceTestAllocator-allocate-09]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/balst.adoc[balst]::xref:BloombergLP/balst/StackTraceTestAllocator.adoc[StackTraceTestAllocator]::allocate
:relfileprefix: ../../../
:mrdocs:

Return a newly allocated block of memory of the specified positive `size` (in bytes)&period;

== Synopsis

Declared in `&lt;balst&lowbar;stacktracetestallocator&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
virtual
void*
allocate(xref:BloombergLP/bslma/Allocator/size_type.adoc[size&lowbar;type] size) override;
----

== Description

If `size` is 0, a null pointer is returned with no other other effect&period; Otherwise, invoke the `allocate` method of the allocator supplied at construction and record the returned block in order to be able to report leaked blocks upon destruction&period;

== Return Value

newly allocated block of memory, or null if `size` is 0

== Parameters

[cols="1,4"]
|===
| Name| Description
| *size*
| number of bytes to allocate
|===


[.small]#Created with https://www.mrdocs.com[MrDocs]#
