From 3e0d3eb15df6a4b4450ea724c57ca4b512a60fcb Mon Sep 17 00:00:00 2001 From: Kefu Chai Date: Wed, 14 Dec 2022 15:17:33 +0800 Subject: [PATCH] crimson/os: specialize fmt::formater<> for types since fmt v9, fmt::formatter<> is not specialized for the types with operator<<(ostream&, ...) anymore. so we need to specialize it manually. in this change, fmt::formatter<> is specialized for tree_stats_t and test_item_t so the tree can compile with fmt v9. Signed-off-by: Kefu Chai --- src/crimson/os/seastore/onode_manager/staged-fltree/fwd.h | 5 +++++ src/test/crimson/seastore/onode_tree/test_value.h | 5 +++++ 2 files changed, 10 insertions(+) diff --git a/src/crimson/os/seastore/onode_manager/staged-fltree/fwd.h b/src/crimson/os/seastore/onode_manager/staged-fltree/fwd.h index 9adba5e34e23a..43f8b87ed95a3 100644 --- a/src/crimson/os/seastore/onode_manager/staged-fltree/fwd.h +++ b/src/crimson/os/seastore/onode_manager/staged-fltree/fwd.h @@ -189,3 +189,8 @@ void reset_ptr(PtrType& ptr, const char* origin_base, } } + +#if FMT_VERSION >= 90000 +template<> +struct fmt::formatter : fmt::ostream_formatter {}; +#endif diff --git a/src/test/crimson/seastore/onode_tree/test_value.h b/src/test/crimson/seastore/onode_tree/test_value.h index 435dd67a2f5a0..98249f8c956c0 100644 --- a/src/test/crimson/seastore/onode_tree/test_value.h +++ b/src/test/crimson/seastore/onode_tree/test_value.h @@ -233,3 +233,8 @@ using ExtendedValue = TestValue< value_magic_t::TEST_EXTENDED, 256, 2048, 1200, 8192, 16384, true>; } + +#if FMT_VERSION >= 90000 +template<> +struct fmt::formatter : fmt::ostream_formatter {}; +#endif -- 2.39.5