Skip to main content
Redhat Developers  Logo
  • Products

    Platforms

    • Red Hat Enterprise Linux
      Red Hat Enterprise Linux Icon
    • Red Hat AI
      Red Hat AI
    • Red Hat OpenShift
      Openshift icon
    • Red Hat Ansible Automation Platform
      Ansible icon
    • View All Red Hat Products

    Featured

    • Red Hat build of OpenJDK
    • Red Hat Developer Hub
    • Red Hat JBoss Enterprise Application Platform
    • Red Hat OpenShift Dev Spaces
    • Red Hat OpenShift Local
    • Red Hat Developer Sandbox

      Try Red Hat products and technologies without setup or configuration fees for 30 days with this shared Openshift and Kubernetes cluster.
    • Try at no cost
  • Technologies

    Featured

    • AI/ML
      AI/ML Icon
    • Linux
      Linux Icon
    • Kubernetes
      Cloud icon
    • Automation
      Automation Icon showing arrows moving in a circle around a gear
    • View All Technologies
    • Programming Languages & Frameworks

      • Java
      • Python
      • JavaScript
    • System Design & Architecture

      • Red Hat architecture and design patterns
      • Microservices
      • Event-Driven Architecture
      • Databases
    • Developer Productivity

      • Developer productivity
      • Developer Tools
      • GitOps
    • Automated Data Processing

      • AI/ML
      • Data Science
      • Apache Kafka on Kubernetes
    • Platform Engineering

      • DevOps
      • DevSecOps
      • Ansible automation for applications and services
    • Secure Development & Architectures

      • Security
      • Secure coding
  • Learn

    Featured

    • Kubernetes & Cloud Native
      Openshift icon
    • Linux
      Rhel icon
    • Automation
      Ansible cloud icon
    • AI/ML
      AI/ML Icon
    • View All Learning Resources

    E-Books

    • GitOps Cookbook
    • Podman in Action
    • Kubernetes Operators
    • The Path to GitOps
    • View All E-books

    Cheat Sheets

    • Linux Commands
    • Bash Commands
    • Git
    • systemd Commands
    • View All Cheat Sheets

    Documentation

    • Product Documentation
    • API Catalog
    • Legacy Documentation
  • Developer Sandbox

    Developer Sandbox

    • Access Red Hat’s products and technologies without setup or configuration, and start developing quicker than ever before with our new, no-cost sandbox environments.
    • Explore Developer Sandbox

    Featured Developer Sandbox activities

    • Get started with your Developer Sandbox
    • OpenShift virtualization and application modernization using the Developer Sandbox
    • Explore all Developer Sandbox activities

    Ready to start developing apps?

    • Try at no cost
  • Blog
  • Events
  • Videos

Red Hat at the ISO C++ Standards Meeting (November 2014): Library

December 16, 2014
Jonathan Wakely
Related topics:
Developer Tools
Related products:
Developer Tools

Share:

    gnu logoLast month I attended the ISO standardisation meeting for C++ in Urbana-Champaign. As usual I spent most of the week in the Library Working Group or Library Evolution Working Group. In LWG, about half the week was spent processing comments received from National Bodies during the ballots for the Technical Specification (TS) on C++ Extensions for Parallelism and the TS for C++ Extensions for Library Fundamentals, both of which were at the PDTS (public draft) stage.

    LWG reviewed some changes to the Parallelism TS, based on National Body comments, more details of those changes can be found in Torvald's report.

    The Library Fundamentals TS received quite a few National Body comments, some of which were rejected or ruled to be out of scope for the first version of the TS, but some resulted in changes to the draft TS. One significant change to the PDTS was the removal of the generic versions of ntohs/htons/ntohl/htonl due to concerns about implementation difficulty and interference with the C library versions. The other changes to the PDTS are in the post-Urbana mailing as N4270 and N4288. With those changes the Library Fundamentals TS has moved to DTS stage. GCC's implementations of any, optional and string_view will be updated soon to conform to the DTS.

    During the rest of the week a number of proposals were reviewed for the next C++ standard (C++17) and for the second version of the Library Fundamentals TS. One issue which has been discussed for some time is how exception specifications should be used in the standard library, but at this meeting we seem to have found a solution that everyone is happy with. Some of the new exception specifications are complex but all the library implementors agree they are correct and can be implemented without problems, and users don't need to understand the nuances of the spec to benefit from the changes. N4258 has the details of those changes. Many of the edits require all C++ standard library implementations to do exactly what is already done in GCC and the new is_always_equal trait is based on something originating in GCC, so it will be simple to update libstdc++ to conform to those new requirements.

    23 defects reports for the standard library were resolved at this meeting, and during the week we got another 13 ready to be resolved at the next meeting, and agreed on the solution for another dozen or so issues. We still have a large number of unresolved issues, but hope to work on them via email between meetings and to hold two teleconferences for issue processing. I am assigned to draft wording for a few issues, as I either reported them myself or on behalf of GCC users who reported bugs against libstdc++.

    The proposal to standardise Boost.Asio as a C++ Networking library is going ahead with strong support from the LEWG, We expect to spend a lot of time reviewing the updated proposal (N4243) more carefully at the next meeting.

    For the first time ever we also voted to remove something from the standard library! std::auto_ptr and a few other deprecated types will not be in C++17, because they have been replaced with alternatives that are either safer or more flexible. Future releases of GCC will warn users when they are using one of those library features that will not be in C++17.

    During a busy evening session Eric Niebler presented his work on Ranges. There was widespread support for Eric's approach and it might form an important part of the next generation of the C++ standard library.

    As the Concepts TS is nearing completion (see Jason's trip report) those involved with that work are starting to think about how to leverage concepts in the standard library. That may have a lot of overlap with the Ranges work, although it's not yet clear whether they should be combined or kept separate. It would be useful to prototype some of that work in GCC, as has already been done for the Concepts language support.

    After the two teleconferences scheduled for December and January the library groups are meeting in Cologne in February, without the rest of the committee. We will work on the backlog of proposals, as well as start serious reviews of the Networking proposal. The next meeting after that will be the full committee one in Kansas in May.

    Also, see the related report on core.

    Last updated: April 5, 2018

    Recent Posts

    • Integrate incident detection with OpenShift Lightspeed via MCP

    • One model is not enough, too many models is hard: Technical deep dive

    • What's new in Ansible Automation Platform 2.6

    • Quantum computing 101 for developers

    • LLM Compressor 0.8.0: Extended support for Qwen3 and more

    Red Hat Developers logo LinkedIn YouTube Twitter Facebook

    Platforms

    • Red Hat AI
    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products

    Build

    • Developer Sandbox
    • Developer Tools
    • Interactive Tutorials
    • API Catalog

    Quicklinks

    • Learning Resources
    • E-books
    • Cheat Sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site Status Dashboard
    • Report a security problem

    RED HAT DEVELOPER

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2025 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility

    Report a website issue