Skip to content

[libc++][format] Should formatter<vec-bool-ref> be default constructible without <format> include? #61314

@JMazurkiewicz

Description

@JMazurkiewicz

According to [vector.syn], formatter specialization for vector<bool>::reference should be available in <vector> header and (since it satisfies BasicFormatter) it should be also default constructible.

Repro:

#include <concepts>
#include <vector>

using R = std::vector<bool>::reference;
using F = std::formatter<R>;
static_assert(std::default_initializable<F>);

Expected: correct compilation
Got: failed static assertion, because <format> include is missing
Compiler explorer: https://godbolt.org/z/sW8dM8cvd

Metadata

Metadata

Assignees

Labels

confirmedVerified by a second partylibc++libc++ C++ Standard Library. Not GNU libstdc++. Not libc++abi.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions