diff options
| author | Markus Mittendrein <git@maxmitti.tk> | 2020-07-28 18:57:37 +0200 |
|---|---|---|
| committer | Markus Mittendrein <git@maxmitti.tk> | 2020-07-28 18:57:37 +0200 |
| commit | fc817cd011250d968c3183b650845245bf459f6a (patch) | |
| tree | 89570d563bc9a7e14d0118e5d09a466c742f9a74 | |
| parent | 2dbf4f2c0732879a47e48284353353b89cbe97a9 (diff) | |
| download | cxxformat-fc817cd011250d968c3183b650845245bf459f6a.tar.gz cxxformat-fc817cd011250d968c3183b650845245bf459f6a.zip | |
Show character triggering unknown conversion in error message
| -rw-r--r-- | cxxformat.hpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/cxxformat.hpp b/cxxformat.hpp index 3a45e9f..46d18b4 100644 --- a/cxxformat.hpp +++ b/cxxformat.hpp @@ -610,6 +610,12 @@ namespace detail else return substr<i, iAfterPrecision - 1, true>(fmt) + conversion; } + template<char c, std::size_t size> + consteval void showUnknownConversionSpecifier() + { + static_assert(size == 0, "Unknown conversion specifier!"); + } + template<auto fmt, size_t i, size_t argumentIndex, typename Arg, typename... Args> std::string format_s(Arg &&arg, Args &&...args) { @@ -642,7 +648,7 @@ namespace detail } else { - static_assert(fmt.size == 0, "Unknown conversion specifier!"); + showUnknownConversionSpecifier<conversion, fmt.size>(); throw FormatException{std::string{"Unknown conversion specifier: \""} + conversion + "\""}; } } |
