]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: be compatible with fmtlib v8 49479/head
authorKefu Chai <tchaikov@gmail.com>
Fri, 16 Dec 2022 11:14:53 +0000 (19:14 +0800)
committerKefu Chai <tchaikov@gmail.com>
Fri, 16 Dec 2022 11:18:05 +0000 (19:18 +0800)
commitd012e47d86ed07b3d70ce69cc5eb4712aa28b64a
tree0693382c3666fe543eeaa0deadb5f1f615e1b573
parentd2f2c27acfa110f97b0685c5bd2d02f28128262f
rgw: be compatible with fmtlib v8

before fmtlib v9, fmtlib provides:

template<typename S, typename ...Args, typename Char = enable_if_t<detail::is_string<S>::value, char_t<S>>>
void fmt::print(std::basic_ostream<Char> &os, const S &format_str, Args&&... args)

but in fmtlib v9 and up, it provides:

template<typename ...T>
void fmt::print(std::ostream &os, format_string<T...> fmt, T&&... args)

so we need to use different function signatures for talking to different
fmtlib versions.

please see
https://fmt.dev/8.1.0/api.html#_CPPv4I0Dp0EN3fmt5printEvRNSt13basic_ostreamI4CharEERK1SDpRR4Args,
and
https://fmt.dev/9.0.0/api#_CPPv4IDpEN3fmt5printEvRNSt7ostreamE13format_stringIDp1TEDpRR1T

fore more details.

Signed-off-by: Kefu Chai <tchaikov@gmail.com>
src/rgw/driver/rados/rgw_data_sync.h