diff --git a/libcxx/docs/Status/Cxx2bIssues.csv b/libcxx/docs/Status/Cxx2bIssues.csv --- a/libcxx/docs/Status/Cxx2bIssues.csv +++ b/libcxx/docs/Status/Cxx2bIssues.csv @@ -154,7 +154,7 @@ "`3648 `__","``format`` should not print ``bool`` with ``'c'`` ","February 2022","","","|format|" "`3649 `__","[fund.ts.v2] Reinstate and bump ``__cpp_lib_experimental_memory_resource`` feature test macro","February 2022","","" "`3650 `__","Are ``std::basic_string`` 's ``iterator`` and ``const_iterator`` constexpr iterators?","February 2022","|Nothing to do|","" -"`3654 `__","``basic_format_context::arg(size_t)`` should be ``noexcept`` ","February 2022","","","|format|" +"`3654 `__","``basic_format_context::arg(size_t)`` should be ``noexcept`` ","February 2022","|Complete|","15.0","|format|" "`3657 `__","``std::hash`` is not enabled","February 2022","","" "`3660 `__","``iterator_traits::pointer`` should conform to ยง[iterator.traits]","February 2022","|Complete|","14.0" "`3661 `__","``constinit atomic> a (nullptr);`` should work","February 2022","","" diff --git a/libcxx/include/__format/format_context.h b/libcxx/include/__format/format_context.h --- a/libcxx/include/__format/format_context.h +++ b/libcxx/include/__format/format_context.h @@ -98,7 +98,7 @@ basic_format_context& operator=(const basic_format_context&) = delete; _LIBCPP_HIDE_FROM_ABI basic_format_arg - arg(size_t __id) const { + arg(size_t __id) const noexcept { return __args_.get(__id); } #ifndef _LIBCPP_HAS_NO_LOCALIZATION diff --git a/libcxx/test/std/utilities/format/format.formatter/format.context/format.context/arg.pass.cpp b/libcxx/test/std/utilities/format/format.formatter/format.context/format.context/arg.pass.cpp --- a/libcxx/test/std/utilities/format/format.formatter/format.context/format.context/arg.pass.cpp +++ b/libcxx/test/std/utilities/format/format.formatter/format.context/format.context/arg.pass.cpp @@ -34,6 +34,7 @@ const std::basic_format_context context = test_format_context_create(OutIt{output}, args); LIBCPP_ASSERT(args.__size() == 4); + ASSERT_NOEXCEPT(context.arg(0)); for (size_t i = 0, e = args.__size(); i != e; ++i) { assert(context.arg(i)); }