diff --git a/const_fmt/format.h b/const_fmt/format.h index cc8b0c3..e300e78 100644 --- a/const_fmt/format.h +++ b/const_fmt/format.h @@ -115,10 +115,12 @@ namespace const_fmt { template constexpr inline auto const_format(args_t... args) { - constexpr auto ast = const_fmt_detail::parse_string().value; - constexpr auto fmt_data = const_fmt_detail::get_fmt_data(); + constexpr auto ast = const_fmt_detail::parse_string(); + constexpr auto fmt_data = const_fmt_detail::get_fmt_data(); - auto result = const_fmt_detail::get_preproc_string(); + static_assert(ast.is_valid, "Invalid format string"); + + auto result = const_fmt_detail::get_preproc_string(); const_fmt_detail::format_args(result.begin(), args...);