[#BloombergLP-bslmf-InvokeResult_MemObjPtrImpDispatch-02-unpoint-03]
= xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmf.adoc[bslmf]::xref:BloombergLP/bslmf/InvokeResult_MemObjPtrImpDispatch-02.adoc[InvokeResult&lowbar;MemObjPtrImpDispatch&lt;bslmf::VoidType&lt;decltype(InvokeResult&lowbar;ImpUtils&colon;&colon;myDeclval&lt;t&lowbar;ARGTYPE&gt;()&period;get()&period;&ast;
                 InvokeResult&lowbar;ImpUtils&colon;&colon;myDeclval&lt;t&lowbar;FN&gt;())&gt;::type, false, true, t&lowbar;FN, t&lowbar;ARGTYPE&gt;]::unpoint
:relfileprefix: ../../../
:mrdocs:

Same as the other `unpoint` overloads, for `t&lowbar;TP &ast;volatile&amp;`&period;

== Synopsis

Declared in `&lt;bslmf&lowbar;invokeresult&period;h&gt;`

[source,cpp,subs="verbatim,replacements,macros,-callouts"]
----
template&lt;class t&lowbar;TP&gt;
static
t&lowbar;TP&
unpoint(t&lowbar;TP volatile*& arg)
requires !bsl&colon;&colon;is&lowbar;void&lt;t&lowbar;TP&gt;&colon;&colon;value;
----

== Parameters

[cols="1,4"]
|===
| Name| Description
| *arg*
| pointer expression that is dereferenced conceptually
|===


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