Skip to content

Commit 42cac83

Browse files
committed
Add a test for long and FMT_BUILTIN_TYPES=0
1 parent 0843317 commit 42cac83

File tree

2 files changed

+5
-2
lines changed

2 files changed

+5
-2
lines changed

include/fmt/base.h

+4-2
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@
239239
FMT_PRAGMA_GCC(push_options)
240240
#if !defined(__OPTIMIZE__) && !defined(__CUDACC__) && !defined(FMT_MODULE)
241241
FMT_PRAGMA_GCC(optimize("Og"))
242-
#define FMT_GCC_OPTIMIZED
242+
# define FMT_GCC_OPTIMIZED
243243
#endif
244244
FMT_PRAGMA_CLANG(diagnostic push)
245245

@@ -2153,7 +2153,9 @@ template <typename Context> class value {
21532153
constexpr FMT_INLINE value(unsigned short x FMT_BUILTIN) : uint_value(x) {}
21542154
constexpr FMT_INLINE value(int x) : int_value(x) {}
21552155
constexpr FMT_INLINE value(unsigned x FMT_BUILTIN) : uint_value(x) {}
2156-
FMT_CONSTEXPR FMT_INLINE value(long x FMT_BUILTIN) : value(long_type(x)) {}
2156+
FMT_CONSTEXPR FMT_INLINE
2157+
value(conditional_t<long_short || FMT_BUILTIN_TYPES, long, monostate> x)
2158+
: value(long_type(x)) {}
21572159
FMT_CONSTEXPR FMT_INLINE value(unsigned long x FMT_BUILTIN)
21582160
: value(ulong_type(x)) {}
21592161
constexpr FMT_INLINE value(long long x FMT_BUILTIN) : long_long_value(x) {}

test/no-builtin-types-test.cc

+1
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313

1414
TEST(no_builtin_types_test, format) {
1515
EXPECT_EQ(fmt::format("{}", 42), "42");
16+
EXPECT_EQ(fmt::format("{}", 42L), "42");
1617
}
1718

1819
TEST(no_builtin_types_test, double_is_custom_type) {

0 commit comments

Comments
 (0)