home.social

#cpp29 — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #cpp29, aggregated by home.social.

fetched live
  1. What can C++ developers expect from C++26 and beyond?

    In this final part of the interview, Nicolai Josuttis and Jesper Pedersen talk about C++26, the feature freeze process, Contracts, the growing role of Reflection, and more.

    Watch here: youtube.com/watch?v=2vsSJNWAiDw

    #CPlusPlus #CPP #Cpp26 #Cpp29 #ModernCpp
    youtube.com/watch?v=2vsSJNWAiDw

  2. @mhoemmen mdspan feature request 😉:
    Allow mdspan::operator[] with one argument less than rank.
    Mandates/Constraints: The resulting range is contiguous in memory.
    Returns: A span (of static extent, if possible).

    Then I can use std::simd CTAD from range:
    simd::basic_vec(B[k], simd::flag_aligned);

    instead of:
    simd::unchecked_load<simd::vec<T, N>>(&B[k, 0], &B[k, N-1], simd::flag_aligned);

    The former is not only simpler but also safer.

    #WG21 #cpp29

  3. @meetingcpp

    People need to be aware that the linked blog post is about a fictional world, which may or - more likely - may not become reality.

    To have an impact, a fleshed out proposal with such changes to the C++ standard needs to show up in the committee to be discussed and voted on there. From what I can see so far, I'd like to see much better reasoning to support such a change.

    If ever, the proposed syntax may become a thing in the next decade. Until then, there are other options to achive the desired behaviour.

    #cpp29

  4. Can we fix the following inconsistency in #CPlusPlus: compiler-explorer.com/z/qsYeTn? A conversion operator is sufficient to call wrapped function pointers. But it does not work for wrapped callable objects. And that's even though `wrapper` in the above example has the callable type in its associated namespaces (ADL). ADL was introduced to make operators work. I patched my #GCC to make it work and I like it.

    #WG21 #cpp29 #cpp

  5. @mkretz
    "We violently agree" 😸

    But P3802 will certainly have to wait until #cpp29 to become a portable C++ feature for apparent procedural reasons: it appeared *after* #cpp26 feature freeze, was never discussed in EWG, nor made it into a plenary vote. AFAICS, the mistake of #cpp0x will not be made again.

  6. C++29 will be postponed to C++31

    Otherwise we'll miss C++64, which has to integrate a fully functional C64 emulator in the standard library, called Commodore++64 (or C++64 for short)

    #cpp #cpp29 #commodore64