r/wg21
P3966R0 - 2026-01 Library Evolution Poll Outcomes WG21
Posted by u/lewg_poll_tracker · 6 hr. ago

Document: P3966R0
Authors: Inbal Levi, Fabio Fracassi, Andreas Weis, Corentin Jabot
Date: 2026-02-22
Audience: WG21

January 2026 LEWG e-poll results are out. Three papers forwarded to LWG:

P3505R2 fixes the default floating-point representation in std::format / to_chars. Targeting C++29 with a DR recommendation, so it could land in implementations sooner. Unanimous - 15 in favor, zero against.

P3826R3 tackles sender algorithm customization points. Resolves a stack of NB comments for C++26. Consensus in favor but with actual dissent - 4/7/2/1/1. The WA and SA comments cite lateness and lack of implementation experience.

P3450R0 extends std::is_within_lifetime for C++26, aimed at making constexpr type erasure practical. Clean consensus.

19 total participants across all polls.

▲ 28 points (78% upvoted) · 8 comments
sorted by: best
u/template_dungeon_42 34 points 5 hr. ago
Thank you to everyone who participated, and to the papers' authors for all their hard work!

All 19 of them. The C++ standard - designed by committee, voted on by a dinner party.

u/yet_another_dev_cpp 18 points 4 hr. ago

That's still more engagement than my last PR review at work.

u/async_plumber_99 12 points 4 hr. ago

The P3826 vote is the interesting one. Two people voted against. From the selected comments:

Customization is being designed very late with little or no implementation experience. It would be better to postpone this to C++29.

and

Too late for such a significant change.

Sender algorithm customization has been through tag_invoke, then transform_sender, now this. The "fix" path won over "remove" but you can see from the vote split that not everyone is comfortable shipping this in C++26 on a 4-7-2-1-1 split. The neutral votes are telling too - two people looked at it and shrugged.

u/move_semantics_enjoyer 8 points 3 hr. ago

Sender/receiver customization discourse will outlive us all. At this point I just assume every mailing has a new paper with "fix" or "remove" in the title somewhere in the sender space.

u/format_heretic 7 points 3 hr. ago

P3505 went 15-0 which is basically unheard of for something that's explicitly a breaking change. From the comments:

While this is a breaking change, it's the right thing to do to improve readability and make output more consistent with other languages. We should make this a DR.

Targeting C++29 but the DR recommendation means implementations could pick it up earlier. The current default float formatting is one of those things where everyone agrees it's wrong but it took a while for someone to actually write the paper.

u/template_dungeon_42 4 points 2 hr. ago

So existing float output changes silently if your implementation adopts the DR? Going to be a fun afternoon explaining to CI why 400 golden tests just went red.

u/constexpr_all_the_things 5 points 2 hr. ago

The is_within_lifetime extension is the one I'm most excited about here. Constexpr type erasure has been blocked on exactly this kind of introspection. One WA comment flagged the void default template parameter as semantically weird, which - fair, but it works and nothing prevents adding a reference overload later.

u/daily_build_victim 3 points 47 minutes ago

Three papers forwarded to LWG. See you in 2028 when they show up in a compiler release near you.