Annex D (normative) Compatibility features [depr]

D.8 Old adaptable function bindings [depr.func.adaptor.binding]

D.8.1 Weak result types [depr.weak.result_type]

А call wrapper может иметь weak result type. Если это так, тип его типа члена result_­type основан на типе T целевого объекта оболочки:

  • если T - указатель на тип функции, result_­type должен быть синонимом возвращаемого типа T;

  • если T - указатель на функцию-член, result_­type должен быть синонимом возвращаемого типа T;

  • если T это тип класса, а qualified-id T​::​result_­type действительный и обозначает тип ([temp.deduct]), то result_­type должен быть синонимом для T​::​result_­type;

  • иначе result_­type не определяется.