This document specifies requirements for implementations of the C++ programming language. The first such requirement is that they implement the language, so this document also defines C++. Other requirementsand relaxations of the first requirement appear at various places within this document. C++ is a general purpose programming language based on the C programming language as described inISO/IEC 9899:2018 Programming languages — C (hereinafter referred to as the C standard). C++ providesmany facilities beyond those provided by C, including additional data types, classes, templates, exceptions,namespaces, operator overloading, function name overloading, references, free store management operators,and additional library facilities.