[#BloombergLP-bslmf-InvokeResultDeductionFailed] = xref:BloombergLP.adoc[BloombergLP]::xref:BloombergLP/bslmf.adoc[bslmf]::InvokeResultDeductionFailed :relfileprefix: ../../ :mrdocs: When `invoke_result` cannot deduce the actual return type of a functor (in C++03 mode), it yields this type as a placeholder. The advantage of using this placeholder instead of a compilation failure (e.g., using a static assert) is that the return type of an INVOKE() operation is often discarded, so our failure to deduce the return type is often harmless. Since `InvokeResultDeductionFailed` is a return type, it must be convertible from the actual return type; this conversion is accomplished by means of a constructor that makes it convertible from _any_ type. == Synopsis Declared in `<bslmf_invokeresult.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- struct InvokeResultDeductionFailed; ---- == Member Functions [cols="1,4"] |=== | Name| Description | xref:BloombergLP/bslmf/InvokeResultDeductionFailed/2constructor.adoc[`InvokeResultDeductionFailed`] [.small]#[constructor]# | Convert from an arbitrary type. The actual argument value is discarded. |=== [.small]#Created with https://www.mrdocs.com[MrDocs]#