mastodon.world is one of the many independent Mastodon servers you can use to participate in the fediverse.
Generic Mastodon server for anyone to use.

Server stats:

8.1K
active users

#cpp23

1 post1 participant0 posts today
Kawaoneechan<p>Did I just hand-write an implementation of <a href="https://mas.to/tags/cpp23" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp23</span></a> std::expected for use in <a href="https://mas.to/tags/cpp11" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp11</span></a>? Very, very yes.</p><p>Is it complete? No. But it is functional enough.</p><p>Am I pleased with it? Also very yes!</p><p>Will I use it in <a href="https://mas.to/tags/ProjectSpecialK" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>ProjectSpecialK</span></a>? I dunno, maybe. We'll see.</p>
Andreas Fertig<p>I will be speaking at Meeting C++ 2025! Jens did an amazing job bringing the full schedule up in no time! Yes. Meeting C++ is again in December, but you can already see the schedule. My talk's title is "Embedded-Friendly C++: Features That Make a Difference". Come and join me there!</p><p><a href="https://mas.to/tags/cpp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp</span></a> <a href="https://mas.to/tags/cpp23" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp23</span></a></p>
Andreas Fertig<p>How I did speed up the CI build time for C++ Insights</p><p><a href="https://andreasfertig.com/blog/2025/06/ci-pipeline-improvments-for-cpp-insights/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">andreasfertig.com/blog/2025/06</span><span class="invisible">/ci-pipeline-improvments-for-cpp-insights/</span></a></p><p><a href="https://mas.to/tags/cplusplus" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cplusplus</span></a> <a href="https://mas.to/tags/cpp26" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp26</span></a> <a href="https://mas.to/tags/cpp20" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp20</span></a> <a href="https://mas.to/tags/cpp23" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp23</span></a> <a href="https://mas.to/tags/cppinsights" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cppinsights</span></a></p>
Andreas Fertig<p>C++ Insights upgraded to Clang 20 🎉🚀🥳</p><p><a href="https://andreasfertig.com/blog/2025/05/cpp-insights-now-uses-clang-20/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">andreasfertig.com/blog/2025/05</span><span class="invisible">/cpp-insights-now-uses-clang-20/</span></a></p><p><a href="https://mas.to/tags/cplusplus" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cplusplus</span></a> <a href="https://mas.to/tags/cpp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp</span></a> <a href="https://mas.to/tags/cpp23" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp23</span></a> <a href="https://mas.to/tags/cpp26" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp26</span></a> <a href="https://mas.to/tags/cppinsights" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cppinsights</span></a></p>
Andreas Fertig<p>In my latest blog post, "The correct way to do type punning in C++ - The second act," you'll learn what you can do if you need type punning but cannot afford the copy of std::bit_cast.</p><p><a href="https://andreasfertig.com/blog/2025/04/the-correct-way-to-do-type-punning-in-cpp-the-second-act/" rel="nofollow noopener" translate="no" target="_blank"><span class="invisible">https://</span><span class="ellipsis">andreasfertig.com/blog/2025/04</span><span class="invisible">/the-correct-way-to-do-type-punning-in-cpp-the-second-act/</span></a></p><p><a href="https://mas.to/tags/cplusplus" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cplusplus</span></a> <a href="https://mas.to/tags/cpp" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp</span></a> <a href="https://mas.to/tags/cpp23" class="mention hashtag" rel="nofollow noopener" target="_blank">#<span>cpp23</span></a></p>

🎉 🎉 C23 and C++23 are finally joining the quadruple precision club, by bringing a standard way to handle 128-bit floating point numbers!
(FP16 is also here if you need it)

Here is hoping that a future Fortran standard will adopt the C_Float128 kind specifier that gcc/gfortran already has as an extension.
en.cppreference.com/w/cpp/type

en.cppreference.comFixed width floating-point types (since C++23) - cppreference.com
#c23#cpp23#cpp

Triggering a compile-time error from consteval function is harder than it should be.

One would expect static_assert to work, but when you need to assert preconditions on function parameters, you can't use that.

You have to either invoke undefined behavior (as it triggers compile error in consteval context) or invoke a non-constexpr method.

If you need a description for the error message, the method name is your error message!

Gotta love the C++ standard library (sarcasm).

It adds std::osyncstream in C++20 which synchronizes writes to a wrapped stream across threads.

And then it adds std::print in C++23 which replaces normal stream operations and accepts a stream reference to which it should write.

Except... for some reason it converts that stream to FILE* which means that any synchronization capabilities of osyncstream are lost, making you fumbling why a perfectly legal C++ code misbehaves.

At least if they'd explicitly deleted that overload...