ABI Changelog
==============
This changelog contains information about ABI changes in libc++. Specifically
the addition and deletion of symbols from the libc++ dylib.

Each entry should start with the revision number followed by a description of
the change. The entry should contain a summary of the ABI changes made,
including what symbols were added, removed, or changed.

To generate a summary, re-generate the new ABI list using the
`generate-cxx-abilist` target, and look at the diff.

New entries should be added directly below the "Version" header.

------------
Version 17.0
------------

* [libc++] Remove explicit instantiations of __insertion_sort_incomplete and __sort5 from the dylib

  These instantiations were never visible, because they are only used in `__sort`, which is also explicitly
  instantiated in the dylib.

  All platforms
  -------------
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIaaEEPaEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIccEEPcEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIddEEPdEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIeeEEPeEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIffEEPfEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIhhEEPhEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIiiEEPiEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIjjEEPjEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIllEEPlEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessImmEEPmEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIssEEPsEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIttEEPtEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIwwEEPwEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIxxEEPxEEbT0_S5_T_
  Symbol removed: _ZNSt3__127__insertion_sort_incompleteIRNS_6__lessIyyEEPyEEbT0_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIeeEEPeEEjT0_S5_S5_S5_S5_T_

------------
Version 16.0
------------

* [libc++][PMR] Move the pmr::memory_resource destructor into the dylib

  All platforms
  -------------
  Symbol added: _ZNSt3__13pmr15memory_resourceD0Ev
  Symbol added: _ZNSt3__13pmr15memory_resourceD1Ev
  Symbol added: _ZNSt3__13pmr15memory_resourceD2Ev
  Symbol added: _ZTVNSt3__13pmr15memory_resourceE

* [libc++] [C++17] Implement <memory_resource>.

  This commit adds <memory_resource> to the shared library.

  All platforms
  -------------
  Symbol added: _ZNKSt3__13pmr26synchronized_pool_resource11do_is_equalERKNS0_15memory_resourceE
  Symbol added: _ZNKSt3__13pmr28unsynchronized_pool_resource12__pool_indexEmm
  Symbol added: _ZNKSt3__13pmr28unsynchronized_pool_resource17__pool_block_sizeEi
  Symbol added: _ZNKSt3__13pmr28unsynchronized_pool_resource22__log2_pool_block_sizeEi
  Symbol added: _ZNKSt3__13pmr28unsynchronized_pool_resource7optionsEv
  Symbol added: _ZNSt3__13pmr19new_delete_resourceEv
  Symbol added: _ZNSt3__13pmr20get_default_resourceEv
  Symbol added: _ZNSt3__13pmr20null_memory_resourceEv
  Symbol added: _ZNSt3__13pmr20set_default_resourceEPNS0_15memory_resourceE
  Symbol added: _ZNSt3__13pmr25monotonic_buffer_resource11do_allocateEmm
  Symbol added: _ZNSt3__13pmr25monotonic_buffer_resource14__chunk_footer25__try_allocate_from_chunkEmm
  Symbol added: _ZNSt3__13pmr25monotonic_buffer_resource20__initial_descriptor25__try_allocate_from_chunkEmm
  Symbol added: _ZNSt3__13pmr28unsynchronized_pool_resource11do_allocateEmm
  Symbol added: _ZNSt3__13pmr28unsynchronized_pool_resource12__adhoc_pool13__do_allocateEPNS0_15memory_resourceEmm
  Symbol added: _ZNSt3__13pmr28unsynchronized_pool_resource12__adhoc_pool13__release_ptrEPNS0_15memory_resourceE
  Symbol added: _ZNSt3__13pmr28unsynchronized_pool_resource12__adhoc_pool15__do_deallocateEPNS0_15memory_resourceEPvmm
  Symbol added: _ZNSt3__13pmr28unsynchronized_pool_resource13do_deallocateEPvmm
  Symbol added: _ZNSt3__13pmr28unsynchronized_pool_resource7releaseEv
  Symbol added: _ZNSt3__13pmr28unsynchronized_pool_resourceC1ERKNS0_12pool_optionsEPNS0_15memory_resourceE
  Symbol added: _ZNSt3__13pmr28unsynchronized_pool_resourceC2ERKNS0_12pool_optionsEPNS0_15memory_resourceE
  Symbol added: _ZTINSt3__13pmr15memory_resourceE
  Symbol added: _ZTINSt3__13pmr25monotonic_buffer_resourceE
  Symbol added: _ZTINSt3__13pmr26__null_memory_resource_impE
  Symbol added: _ZTINSt3__13pmr26synchronized_pool_resourceE
  Symbol added: _ZTINSt3__13pmr28unsynchronized_pool_resourceE
  Symbol added: _ZTINSt3__13pmr32__new_delete_memory_resource_impE
  Symbol added: _ZTSNSt3__13pmr15memory_resourceE
  Symbol added: _ZTSNSt3__13pmr25monotonic_buffer_resourceE
  Symbol added: _ZTSNSt3__13pmr26__null_memory_resource_impE
  Symbol added: _ZTSNSt3__13pmr26synchronized_pool_resourceE
  Symbol added: _ZTSNSt3__13pmr28unsynchronized_pool_resourceE
  Symbol added: _ZTSNSt3__13pmr32__new_delete_memory_resource_impE
  Symbol added: _ZTVNSt3__13pmr25monotonic_buffer_resourceE
  Symbol added: _ZTVNSt3__13pmr26synchronized_pool_resourceE
  Symbol added: _ZTVNSt3__13pmr28unsynchronized_pool_resourceE

------------
Version 15.0
------------

* f1c30135417f - [libc++] Drop the legacy debug mode symbols by default

  This commit removed symbols implementing debug mode in the non-debug
  configuration of the library. Using the debug mode now requires a
  differently-configured version of libc++. This is technically an ABI
  break, however any user having been using the debug mode support previously
  was already at risk of non-benign ODR violations, and in practice we
  never found it to work reliably.

  All platforms
  -------------
  Symbol removed: _ZNKSt3__111__libcpp_db15__decrementableEPKv
  Symbol removed: _ZNKSt3__111__libcpp_db15__find_c_from_iEPv
  Symbol removed: _ZNKSt3__111__libcpp_db15__subscriptableEPKvl
  Symbol removed: _ZNKSt3__111__libcpp_db17__dereferenceableEPKv
  Symbol removed: _ZNKSt3__111__libcpp_db17__find_c_and_lockEPv
  Symbol removed: _ZNKSt3__111__libcpp_db22__less_than_comparableEPKvS2_
  Symbol removed: _ZNKSt3__111__libcpp_db6unlockEv
  Symbol removed: _ZNKSt3__111__libcpp_db8__find_cEPv
  Symbol removed: _ZNKSt3__111__libcpp_db9__addableEPKvl
  Symbol removed: _ZNKSt3__119__libcpp_debug_info4whatEv
  Symbol removed: _ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E
  Symbol removed: _ZNSt3__111__libcpp_db10__insert_iEPv
  Symbol removed: _ZNSt3__111__libcpp_db11__insert_icEPvPKv
  Symbol removed: _ZNSt3__111__libcpp_db15__iterator_copyEPvPKv
  Symbol removed: _ZNSt3__111__libcpp_db16__invalidate_allEPv
  Symbol removed: _ZNSt3__111__libcpp_db4swapEPvS1_
  Symbol removed: _ZNSt3__111__libcpp_db9__erase_cEPv
  Symbol removed: _ZNSt3__111__libcpp_db9__erase_iEPv
  Symbol removed: _ZNSt3__111__libcpp_dbC1Ev
  Symbol removed: _ZNSt3__111__libcpp_dbC2Ev
  Symbol removed: _ZNSt3__111__libcpp_dbD1Ev
  Symbol removed: _ZNSt3__111__libcpp_dbD2Ev
  Symbol removed: _ZNSt3__114__get_const_dbEv
  Symbol removed: _ZNSt3__123__libcpp_debug_functionE
  Symbol removed: _ZNSt3__127__libcpp_set_debug_functionEPFvRKNS_19__libcpp_debug_infoEE
  Symbol removed: _ZNSt3__129__libcpp_abort_debug_functionERKNS_19__libcpp_debug_infoE
  Symbol removed: _ZNSt3__18__c_node5__addEPNS_8__i_nodeE
  Symbol removed: _ZNSt3__18__c_nodeD0Ev
  Symbol removed: _ZNSt3__18__c_nodeD1Ev
  Symbol removed: _ZNSt3__18__c_nodeD2Ev
  Symbol removed: _ZNSt3__18__get_dbEv
  Symbol removed: _ZNSt3__18__i_nodeD1Ev
  Symbol removed: _ZNSt3__18__i_nodeD2Ev
  Symbol removed: _ZTINSt3__18__c_nodeE
  Symbol removed: _ZTSNSt3__18__c_nodeE
  Symbol removed: _ZTVNSt3__18__c_nodeE

* b0fd9497af6d, 7de5aca84c54 and 507125af3d0b - [libc++] Add a lightweight overridable assertion handler

  This patch adds a lightweight assertion handler mechanism that can be
  overriden at link-time in a fashion similar to `operator new`. A default
  assertion handler is provided in the shared library, hence the added
  symbol.

  All platforms
  -------------
  Symbol added: _ZNSt3__122__libcpp_verbose_abortEPKcz

------------
Version 14.0
------------

* abb5dd6e99df - [libc++] `to_chars` for floating point.

  This commit added the `to_chars` implementation for floating point values.
  The entire implementation resides in the dylib and the functions specified
  in the Standard are now part of the ABI.

  All platforms
  -------------
  Symbol added: _ZNSt3__18to_charsEPcS0_d
  Symbol added: _ZNSt3__18to_charsEPcS0_dNS_12chars_formatE
  Symbol added: _ZNSt3__18to_charsEPcS0_dNS_12chars_formatEi
  Symbol added: _ZNSt3__18to_charsEPcS0_e
  Symbol added: _ZNSt3__18to_charsEPcS0_eNS_12chars_formatE
  Symbol added: _ZNSt3__18to_charsEPcS0_eNS_12chars_formatEi
  Symbol added: _ZNSt3__18to_charsEPcS0_f
  Symbol added: _ZNSt3__18to_charsEPcS0_fNS_12chars_formatE
  Symbol added: _ZNSt3__18to_charsEPcS0_fNS_12chars_formatEi

* 049f6c29a6f0 - [libc++] Resolve missing table_size symbol

  This commit added an out-of-line definition for `table_size` in the library.
  This is not an ABI break since we are just adding a symbol to the library.
  In fact, any program that would have attempted to refer to that symbol would
  have previously failed to link.

  <arch>-apple-darwin
  -------------------------
  Symbol added: _ZNSt3__15ctypeIcE10table_sizeE

  x86_64-unknown-linux-gnu
  ------------------------
  Symbol added: _ZNSt3__15ctypeIcE10table_sizeE

* 434dc0a5bcae - [libc++] Always define a key function for std::bad_function_call in the dylib

  This commit added a new explicit instantiation of std::bad_function_call's
  vtable in the shared library. This change is not an ABI break as it only
  adds symbols to the library. Programs compiled against the library will not
  rely on the vtable being defined in it by default. Reliance on the vtable
  being in the shared library can be enabled by defining the
  _LIBCPP_ABI_BAD_FUNCTION_CALL_KEY_FUNCTION macro.

  Note that this commit also causes the libc++ shared library to start relying
  on std::exception::what() being provided. This is due to the fact that the
  shared library now contains the vtable for std::bad_function_call, which
  references std::exception::what(). This shouldn't be an issue since that
  function needs to be available to users in order to use std::bad_function_call
  before this patch too.

  All platforms
  -------------
  Symbol added: _ZNSt3__117bad_function_callD0Ev
  Symbol added: _ZNSt3__117bad_function_callD1Ev
  Symbol added: _ZNSt3__117bad_function_callD2Ev
  Symbol added: _ZTINSt3__117bad_function_callE
  Symbol added: _ZTSNSt3__117bad_function_callE
  Symbol added: _ZTVNSt3__117bad_function_callE

  <arch>-unknown-linux-gnu
  ------------------------
  Added dependency on symbol: _ZNKSt9exception4whatEv

------------
Version 12.0
------------

* a984dcaf7c21 - [libc++] [P0482] [C++20] Implement missing bits for codecvt and codecvt_byname.

  This commit added new instantiations with char8_t for classes codecvt and
  codecvt_byname in <locale> in the library.

  All platforms
  -------------
  Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE10do_unshiftERS1_PDuS4_RS4_
  Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE11do_encodingEv
  Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE13do_max_lengthEv
  Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE16do_always_noconvEv
  Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE5do_inERS1_PKDuS5_RS5_PDiS7_RS7_
  Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE6do_outERS1_PKDiS5_RS5_PDuS7_RS7_
  Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE9do_lengthERS1_PKDuS5_m
  Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE10do_unshiftERS1_PDuS4_RS4_
  Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE11do_encodingEv
  Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE13do_max_lengthEv
  Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE16do_always_noconvEv
  Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE5do_inERS1_PKDuS5_RS5_PDsS7_RS7_
  Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE6do_outERS1_PKDsS5_RS5_PDuS7_RS7_
  Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE9do_lengthERS1_PKDuS5_m
  Symbol added: _ZNSt3__114codecvt_bynameIDiDu11__mbstate_tED0Ev
  Symbol added: _ZNSt3__114codecvt_bynameIDiDu11__mbstate_tED1Ev
  Symbol added: _ZNSt3__114codecvt_bynameIDiDu11__mbstate_tED2Ev
  Symbol added: _ZNSt3__114codecvt_bynameIDsDu11__mbstate_tED0Ev
  Symbol added: _ZNSt3__114codecvt_bynameIDsDu11__mbstate_tED1Ev
  Symbol added: _ZNSt3__114codecvt_bynameIDsDu11__mbstate_tED2Ev
  Symbol added: _ZNSt3__17codecvtIDiDu11__mbstate_tE2idE
  Symbol added: _ZNSt3__17codecvtIDiDu11__mbstate_tED0Ev
  Symbol added: _ZNSt3__17codecvtIDiDu11__mbstate_tED1Ev
  Symbol added: _ZNSt3__17codecvtIDiDu11__mbstate_tED2Ev
  Symbol added: _ZNSt3__17codecvtIDsDu11__mbstate_tE2idE
  Symbol added: _ZNSt3__17codecvtIDsDu11__mbstate_tED0Ev
  Symbol added: _ZNSt3__17codecvtIDsDu11__mbstate_tED1Ev
  Symbol added: _ZNSt3__17codecvtIDsDu11__mbstate_tED2Ev
  Symbol added: _ZTINSt3__114codecvt_bynameIDiDu11__mbstate_tEE
  Symbol added: _ZTINSt3__114codecvt_bynameIDsDu11__mbstate_tEE
  Symbol added: _ZTINSt3__17codecvtIDiDu11__mbstate_tEE
  Symbol added: _ZTINSt3__17codecvtIDsDu11__mbstate_tEE
  Symbol added: _ZTSNSt3__17codecvtIDiDu11__mbstate_tEE
  Symbol added: _ZTSNSt3__17codecvtIDsDu11__mbstate_tEE
  Symbol added: _ZTVNSt3__114codecvt_bynameIDiDu11__mbstate_tEE
  Symbol added: _ZTVNSt3__114codecvt_bynameIDsDu11__mbstate_tEE
  Symbol added: _ZTVNSt3__17codecvtIDiDu11__mbstate_tEE
  Symbol added: _ZTVNSt3__17codecvtIDsDu11__mbstate_tEE

  <arch>-unknown-linux-gnu
  ------------------------
  Symbol added: _ZTSNSt3__114codecvt_bynameIDiDu11__mbstate_tEE
  Symbol added: _ZTSNSt3__114codecvt_bynameIDsDu11__mbstate_tEE

* 997d41cdec53 - [libc++] Instantiate additional <iostream> members in the dylib

  This commit added new explicit instantiations for classes in <iostream> in
  the library. This was done after noticing that many programs that used streams
  ended up containing weak definitions of these classes, which has a negative
  impact on both code size and load times. This change is not an ABI break,
  since we are just adding additional symbols.

  All platforms
  -------------
  Symbol added: _ZNKSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE3strEv
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE11__read_modeEv
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE12__write_modeEv
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4openEPKcj
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4swapERS3_
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4syncEv
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE5closeEv
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE5imbueERKNS_6localeE
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE6setbufEPcl
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE7seekoffExNS_8ios_base7seekdirEj
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE7seekposENS_4fposI11__mbstate_tEEj
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE8overflowEi
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE9pbackfailEi
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE9underflowEv
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC1EOS3_
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC1Ev
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC2EOS3_
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC2Ev
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED0Ev
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED1Ev
  Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED2Ev
  Symbol added: _ZNSt3__114basic_ifstreamIcNS_11char_traitsIcEEE4openEPKcj
  Symbol added: _ZNSt3__114basic_ifstreamIcNS_11char_traitsIcEEE4openERKNS_12basic_stringIcS2_NS_9allocatorIcEEEEj
  Symbol added: _ZNSt3__114basic_ofstreamIcNS_11char_traitsIcEEE4openEPKcj
  Symbol added: _ZNSt3__114basic_ofstreamIcNS_11char_traitsIcEEE4openERKNS_12basic_stringIcS2_NS_9allocatorIcEEEEj
  Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE3strERKNS_12basic_stringIcS2_S4_EE
  Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE4swapERS5_
  Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE7seekoffExNS_8ios_base7seekdirEj
  Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE8overflowEi
  Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE9pbackfailEi
  Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE9underflowEv
  Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEC1EOS5_
  Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_
  Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_
  Symbol added: _ZNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_
  Symbol added: _ZNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_
  Symbol added: _ZNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_
  Symbol added: _ZTCNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE0_NS_13basic_istreamIcS2_EE
  Symbol added: _ZTCNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE0_NS_13basic_ostreamIcS2_EE
  Symbol added: _ZTCNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_13basic_istreamIcS2_EE
  Symbol added: _ZTCNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_14basic_iostreamIcS2_EE
  Symbol added: _ZTCNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE16_NS_13basic_ostreamIcS2_EE
  Symbol added: _ZTCNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_13basic_istreamIcS2_EE
  Symbol added: _ZTCNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_13basic_ostreamIcS2_EE
  Symbol added: _ZTINSt3__113basic_filebufIcNS_11char_traitsIcEEEE
  Symbol added: _ZTINSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE
  Symbol added: _ZTINSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE
  Symbol added: _ZTINSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTINSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTINSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTINSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTSNSt3__113basic_filebufIcNS_11char_traitsIcEEEE
  Symbol added: _ZTSNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE
  Symbol added: _ZTSNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE
  Symbol added: _ZTSNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTSNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTSNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTSNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTTNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE
  Symbol added: _ZTTNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE
  Symbol added: _ZTTNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTTNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTTNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTVNSt3__113basic_filebufIcNS_11char_traitsIcEEEE
  Symbol added: _ZTVNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE
  Symbol added: _ZTVNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE
  Symbol added: _ZTVNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTVNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTVNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE
  Symbol added: _ZTVNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE

* 9b40ee8eb0c1 - [libc++] Define new/delete in libc++abi only by default

  By default, libc++ does not include the definition for new and delete anymore.
  Those were previously defined in both libc++ and libc++abi, which was an
  ODR violation.

  <arch>-apple-darwin
  -------------------------
  The following symbols are now re-exported from libc++abi instead of exported
  by libc++ directly (this should not be an ABI break):

  Symbol moved: __ZdaPv
  Symbol moved: __ZdaPvm
  Symbol moved: __ZdaPvmSt11align_val_t
  Symbol moved: __ZdaPvRKSt9nothrow_t
  Symbol moved: __ZdaPvSt11align_val_t
  Symbol moved: __ZdaPvSt11align_val_tRKSt9nothrow_t
  Symbol moved: __ZdlPv
  Symbol moved: __ZdlPvm
  Symbol moved: __ZdlPvmSt11align_val_t
  Symbol moved: __ZdlPvRKSt9nothrow_t
  Symbol moved: __ZdlPvSt11align_val_t
  Symbol moved: __ZdlPvSt11align_val_tRKSt9nothrow_t
  Symbol moved: __Znam
  Symbol moved: __ZnamRKSt9nothrow_t
  Symbol moved: __ZnamSt11align_val_t
  Symbol moved: __ZnamSt11align_val_tRKSt9nothrow_t
  Symbol moved: __Znwm
  Symbol moved: __ZnwmRKSt9nothrow_t
  Symbol moved: __ZnwmSt11align_val_t
  Symbol moved: __ZnwmSt11align_val_tRKSt9nothrow_t

  <arch>-unknown-linux-gnu
  ------------------------
  The following symbols were moved to libc++abi, but are NOT being re-exported
  by libc++. This constitutes an ABI break if one links against libc++ but
  not libc++abi.

  Symbol moved: _ZdaPv
  Symbol moved: _ZdaPvm
  Symbol moved: _ZdaPvmSt11align_val_t
  Symbol moved: _ZdaPvRKSt9nothrow_t
  Symbol moved: _ZdaPvSt11align_val_t
  Symbol moved: _ZdaPvSt11align_val_tRKSt9nothrow_t
  Symbol moved: _ZdlPv
  Symbol moved: _ZdlPvm
  Symbol moved: _ZdlPvmSt11align_val_t
  Symbol moved: _ZdlPvRKSt9nothrow_t
  Symbol moved: _ZdlPvSt11align_val_t
  Symbol moved: _ZdlPvSt11align_val_tRKSt9nothrow_t
  Symbol moved: _Znam
  Symbol moved: _ZnamRKSt9nothrow_t
  Symbol moved: _ZnamSt11align_val_t
  Symbol moved: _ZnamSt11align_val_tRKSt9nothrow_t
  Symbol moved: _Znwm
  Symbol moved: _ZnwmRKSt9nothrow_t
  Symbol moved: _ZnwmSt11align_val_t
  Symbol moved: _ZnwmSt11align_val_tRKSt9nothrow_t

* 4f13b9992971 - [libc++] Simplify how we re-export symbols from libc++abi

  We re-export some symbols that were exported from libc++abi but not from
  libc++. Exporting new symbols is not an ABI break.

  <arch>-apple-darwin
  -------------------
  Symbol added: ___cxa_allocate_dependent_exception
  Symbol added: ___cxa_free_dependent_exception

------------
Version 10.0
------------

* 54fa9ecd3088 - [libc++] Implementation of C++20's P1135R6 for libcxx

  libc++ now implements P1135R6 (The C++20 Synchronization Library), which
  adds a few symbols to the dylib. This is backwards-compatible since we're
  just adding new symbols.

  All platforms
  -------------
  Symbol added: __ZNSt3__120__libcpp_atomic_waitEPVKNS_17__cxx_atomic_implIxNS_22__cxx_atomic_base_implIxEEEEx
  Symbol added: __ZNSt3__120__libcpp_atomic_waitEPVKvx
  Symbol added: __ZNSt3__123__cxx_atomic_notify_allEPVKNS_17__cxx_atomic_implIxNS_22__cxx_atomic_base_implIxEEEE
  Symbol added: __ZNSt3__123__cxx_atomic_notify_allEPVKv
  Symbol added: __ZNSt3__123__cxx_atomic_notify_oneEPVKNS_17__cxx_atomic_implIxNS_22__cxx_atomic_base_implIxEEEE
  Symbol added: __ZNSt3__123__cxx_atomic_notify_oneEPVKv
  Symbol added: __ZNSt3__123__libcpp_atomic_monitorEPVKNS_17__cxx_atomic_implIxNS_22__cxx_atomic_base_implIxEEEE
  Symbol added: __ZNSt3__123__libcpp_atomic_monitorEPVKv
  Symbol added: __ZNSt3__131__arrive_barrier_algorithm_baseEPNS_24__barrier_algorithm_baseEh
  Symbol added: __ZNSt3__132__destroy_barrier_algorithm_baseEPNS_24__barrier_algorithm_baseE
  Symbol added: __ZNSt3__134__construct_barrier_algorithm_baseERl

-----------
Version 9.0
-----------

* r358690 - Re-rexport missing symbols from libc++abi

  libc++ now re-exports `__cxa_throw_bad_array_new_length` and `__cxa_uncaught_exceptions`,
  both of which are provided by libc++abi. This is not an ABI break because
  we're just adding symbols. Also, this does mean that libc++ can't be linked
  against an older version of libc++abi that doesn't provide those symbols,
  however doing so is not supported anyway.

  <arch>-apple-darwin
  -------------------
  Symbol added: ___cxa_throw_bad_array_new_length
  Symbol added: ___cxa_uncaught_exceptions

* r356518 - Integrate <filesystem> support into the shared library

  This patch introduces support for <filesystem> into the shared library,
  instead of requiring users to manually link against a static archive. As
  such, new symbols required to implement <filesystem> are exported from
  the shared library.

  All platforms
  -------------
  Symbol added: _ZNKSt3__14__fs10filesystem18directory_iterator13__dereferenceEv
  Symbol added: _ZNKSt3__14__fs10filesystem28recursive_directory_iterator13__dereferenceEv
  Symbol added: _ZNKSt3__14__fs10filesystem28recursive_directory_iterator5depthEv
  Symbol added: _ZNKSt3__14__fs10filesystem28recursive_directory_iterator7optionsEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path10__filenameEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path11__extensionEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path11__root_nameEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path13__parent_pathEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path15__relative_pathEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path15__root_path_rawEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path16__root_directoryEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path16lexically_normalEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path18lexically_relativeERKS2_
  Symbol added: _ZNKSt3__14__fs10filesystem4path3endEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path5beginEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path6__stemEv
  Symbol added: _ZNKSt3__14__fs10filesystem4path9__compareENS_17basic_string_viewIcNS_11char_traitsIcEEEE
  Symbol added: _ZNSt3__14__fs10filesystem10__absoluteERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem10hash_valueERKNS1_4pathE
  Symbol added: _ZNSt3__14__fs10filesystem11__canonicalERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem11__copy_fileERKNS1_4pathES4_NS1_12copy_optionsEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem11__file_sizeERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem12__equivalentERKNS1_4pathES4_PNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem12__remove_allERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem13__fs_is_emptyERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem13__permissionsERKNS1_4pathENS1_5permsENS1_12perm_optionsEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem13__resize_fileERKNS1_4pathEmPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem14__copy_symlinkERKNS1_4pathES4_PNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem14__current_pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem14__current_pathERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem14__read_symlinkERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem15directory_entry12__do_refreshEv
  Symbol added: _ZNSt3__14__fs10filesystem16__create_symlinkERKNS1_4pathES4_PNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem16__symlink_statusERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem16_FilesystemClock3nowEv
  Symbol added: _ZNSt3__14__fs10filesystem16_FilesystemClock9is_steadyE
  Symbol added: _ZNSt3__14__fs10filesystem16filesystem_error13__create_whatEi
  Symbol added: _ZNSt3__14__fs10filesystem16filesystem_errorD0Ev
  Symbol added: _ZNSt3__14__fs10filesystem16filesystem_errorD1Ev
  Symbol added: _ZNSt3__14__fs10filesystem16filesystem_errorD2Ev
  Symbol added: _ZNSt3__14__fs10filesystem17__hard_link_countERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem17__last_write_timeERKNS1_4pathENS_6chrono10time_pointINS1_16_FilesystemClockENS5_8durationInNS_5ratioILl1ELl1000000000EEEEEEEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem17__last_write_timeERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem18__create_directoryERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem18__create_directoryERKNS1_4pathES4_PNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem18__create_hard_linkERKNS1_4pathES4_PNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem18__weakly_canonicalERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem18directory_iterator11__incrementEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem18directory_iteratorC1ERKNS1_4pathEPNS_10error_codeENS1_17directory_optionsE
  Symbol added: _ZNSt3__14__fs10filesystem18directory_iteratorC2ERKNS1_4pathEPNS_10error_codeENS1_17directory_optionsE
  Symbol added: _ZNSt3__14__fs10filesystem20__create_directoriesERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem21__temp_directory_pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem26__create_directory_symlinkERKNS1_4pathES4_PNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iterator11__incrementEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iterator15__try_recursionEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iterator5__popEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iterator9__advanceEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iteratorC1ERKNS1_4pathENS1_17directory_optionsEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iteratorC2ERKNS1_4pathENS1_17directory_optionsEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem4path17replace_extensionERKS2_
  Symbol added: _ZNSt3__14__fs10filesystem4path19preferred_separatorE
  Symbol added: _ZNSt3__14__fs10filesystem4path8iterator11__decrementEv
  Symbol added: _ZNSt3__14__fs10filesystem4path8iterator11__incrementEv
  Symbol added: _ZNSt3__14__fs10filesystem6__copyERKNS1_4pathES4_NS1_12copy_optionsEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem7__spaceERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem8__removeERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem8__renameERKNS1_4pathES4_PNS_10error_codeE
  Symbol added: _ZNSt3__14__fs10filesystem8__statusERKNS1_4pathEPNS_10error_codeE
  Symbol added: _ZTINSt3__14__fs10filesystem16filesystem_errorE
  Symbol added: _ZTSNSt3__14__fs10filesystem16filesystem_errorE
  Symbol added: _ZTVNSt3__14__fs10filesystem16filesystem_errorE

* r356417 - Remove exception throwing debug mode handler support.

  The reason libc++ implemented a throwing debug mode handler was for ease of testing. Specifically,
  I thought that if a debug violation aborted, we could only test one violation per file. This made
  it impossible to test debug mode. Which throwing behavior we could test more!

  However, the throwing approach didn't work either, since there are debug violations underneath noexcept
  functions. This lead to the introduction of `_NOEXCEPT_DEBUG`, which was only noexcept when debug
  mode was off.

  Having thought more and having grown wiser, `_NOEXCEPT_DEBUG` was a horrible decision. It was
  viral, it didn't cover all the cases it needed to, and it was observable to the user -- at worst
  changing the behavior of their program.

  This patch removes the throwing debug handler, and rewrites the debug tests using 'fork-ing' style
  death tests.

  All Platforms (ignoring versioning namespaces)
  ----------------------------------------------
  Symbol added: _ZNKSt3__119__libcpp_debug_info4whatEv
  Symbol removed: _ZNKSt3__124__libcpp_debug_exception4whatEv
  Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC1ERKNS_19__libcpp_debug_infoE
  Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC1ERKS0_
  Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC1Ev
  Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC2ERKNS_19__libcpp_debug_infoE
  Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC2ERKS0_
  Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC2Ev
  Symbol removed: _ZNSt3__124__libcpp_debug_exceptionD0Ev
  Symbol removed: _ZNSt3__124__libcpp_debug_exceptionD1Ev
  Symbol removed: _ZNSt3__124__libcpp_debug_exceptionD2Ev
  Symbol removed: _ZNSt3__129__libcpp_throw_debug_functionERKNS_19__libcpp_debug_infoE
  Symbol removed: _ZTINSt3__124__libcpp_debug_exceptionE
  Symbol removed: _ZTSNSt3__124__libcpp_debug_exceptionE
  Symbol removed: _ZTVNSt3__124__libcpp_debug_exceptionE

  <arch>-apple-darwin
  -------------------
  Symbol added: __ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E
  Symbol removed: __ZNSt3__111__libcpp_db10__insert_cEPv

* r355367 - Fix -fsanitize=vptr badness in <__debug>

  This patch fixes a lifetime bug when inserting a new container into the debug database. It is
  diagnosed by UBSAN when debug mode is enabled. This patch corrects how nodes are constructed
  during insertion.

  The fix requires unconditionally breaking the debug mode ABI. Users should not expect ABI
  stability from debug mode.

  All platforms
  -------------
  Symbol added: _ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E
  Symbol removed: _ZNSt3__111__libcpp_db10__insert_cEPv

-----------
Version 8.0
-----------

* r347903 - Remove std::bad_array_length

  The change removes the definition of std::bad_array_length (which never made
  it into the standard) from the headers and the dylib. This is technically an
  ABI break because the symbols are shipped starting with mac OSX 10.13, however
  users couldn't be relying on the functionality because it is marked as being
  unavailable using Clang's availability attribute.

  <arch>-apple-darwin
  -------------------
  Symbol removed: __ZNKSt16bad_array_length4whatEv
  Symbol removed: __ZNKSt16bad_array_length4whatEv
  Symbol removed: __ZNSt16bad_array_lengthC1Ev
  Symbol removed: __ZNSt16bad_array_lengthC1Ev
  Symbol removed: __ZNSt16bad_array_lengthC2Ev
  Symbol removed: __ZNSt16bad_array_lengthC2Ev
  Symbol removed: __ZNSt16bad_array_lengthD0Ev
  Symbol removed: __ZNSt16bad_array_lengthD0Ev
  Symbol removed: __ZNSt16bad_array_lengthD1Ev
  Symbol removed: __ZNSt16bad_array_lengthD1Ev
  Symbol removed: __ZNSt16bad_array_lengthD2Ev
  Symbol removed: __ZNSt16bad_array_lengthD2Ev
  Symbol removed: __ZTISt16bad_array_length
  Symbol removed: __ZTISt16bad_array_length
  Symbol removed: __ZTSSt16bad_array_length
  Symbol removed: __ZTSSt16bad_array_length
  Symbol removed: __ZTVSt16bad_array_length
  Symbol removed: __ZTVSt16bad_array_length

* r347395 - Making libc++ build under -fvisibility=hidden on Linux

  The change marks several function templates as hidden. This removes symbols
  from the shared library, but this is not an ABI break because it's impossible
  for programs linking against libc++.so to actually depend on that symbol.
  The reason is that the symbol is exported from the shared library through
  an implicit instantiation present in the shared object itself only. Furthermore,
  if a user's shared object was implicitly instantiating one of these functions,
  marking that symbol as hidden would not be an ABI break for them because none
  of their users could actually be using the symbol in their dylib (because
  it's an implicit instantiation).

  x86_64-linux-gnu
  ----------------
  Symbol removed: _ZNSt3__125__num_get_signed_integralIlEET_PKcS3_Rji
  Symbol removed: _ZNSt3__125__num_get_signed_integralIxEET_PKcS3_Rji
  Symbol removed: _ZNSt3__127__num_get_unsigned_integralIjEET_PKcS3_Rji
  Symbol removed: _ZNSt3__127__num_get_unsigned_integralImEET_PKcS3_Rji
  Symbol removed: _ZNSt3__127__num_get_unsigned_integralItEET_PKcS3_Rji
  Symbol removed: _ZNSt3__127__num_get_unsigned_integralIyEET_PKcS3_Rji
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIaaEEPaEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIccEEPcEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIddEEPdEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIffEEPfEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIhhEEPhEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIiiEEPiEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIjjEEPjEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIllEEPlEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessImmEEPmEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIssEEPsEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIttEEPtEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIwwEEPwEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIxxEEPxEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIyyEEPyEEjT0_S5_S5_S5_S5_T_
  Symbol removed: _ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EERKS9_PKS6_
  Symbol removed: _ZSt18make_exception_ptrINSt3__112future_errorEESt13exception_ptrT_

* r345260 - Making libc++ build under -fvisibility=hidden on Mac OS

  The change marks __thread_specific_ptr<__thread_struct>::__at_thread_exit(void*)
  with hidden visibility. This removes a symbol from the shared libraries,
  however this is not an ABI break because it's impossible for programs linking
  against libc++.dylib to actually depend on that symbol. The reason is that
  the symbol is exported from the shared library through an implicit
  instantiation present in the dylib itself only. Furthermore, if a user's
  dylib was implicitly instantiating __thread_specific_ptr<T>::__at_thread_exit
  (because it's defined in the headers), marking that symbol as hidden would
  not be an ABI break for them because none of their users could actually be
  using the symbol in their dylib (because it's an implicit instantiation).

  This change also marks __start_std_streams as hidden -- this variable is
  only required to initialize the streams, and nobody should depend on it
  from outside the dylib.

  x86_64-linux-gnu
  ----------------
  Symbol removed: _ZNSt3__121__thread_specific_ptrINS_15__thread_structEE16__at_thread_exitEPv
  Symbol removed: _ZNSt3__119__start_std_streamsE

  <arch>-apple-darwin
  -------------------
  Symbol removed: __ZNSt3__221__thread_specific_ptrINS_15__thread_structEE16__at_thread_exitEPv
  Symbol removed: __ZNSt3__119__start_std_streamsE

-----------
Version 7.0
-----------

* r338479 - Elementary string conversions for integral types

  The change emits __u64toa and __u32toa under std::__1::__itoa.

  x86_64-linux-gnu
  ----------------
  Symbol added: _ZNSt3__16__itoa8__u64toaEmPc
  Symbol added: _ZNSt3__16__itoa8__u32toaEjPc

  <arch>-apple-darwin
  -------------------
  Symbol added: __ZNSt3__16__itoa8__u64toaEyPc
  Symbol added: __ZNSt3__16__itoa8__u32toaEjPc


* r333467 - Fix embarrasing typo in uncaught_exceptions.

  This bug caused __uncaught_exception to be ODR used instead of
  __uncaught_exceptions. This change is non-ABI breaking because the symbols
  for std::uncaught_exception and std::uncaught_exceptions haven't changed,
  and because users shouldn't be depending directly on libc++ exporting
  __uncaught_exception/__uncaught_exceptions.

  All Platforms
  ----------------
  Symbol removed: __cxa_uncaught_exception
  Symbol added: __cxa_uncaught_exceptions

-----------
Version 5.0
-----------

* r313500 - Fix undefined "___cxa_deleted_virtual" symbol in macosx

  x86_64-linux-gnu
  ----------------
  No changes

  <arch>-apple-darwin
  -------------------
  Symbol added: ___cxa_deleted_virtual

* r296729 - Remove std::num_get template methods which should be inline

  These functions should never have had visible definitions in the dylib but
  since they were previously not specified with 'inline' they accidentally
  got emitted. This change is non-ABI breaking because every "linkage unit"
  must contain its own definition.

  x86_64-linux-gnu
  ----------------
  Symbol removed: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE15__do_get_signedIlEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE15__do_get_signedIxEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE17__do_get_unsignedIjEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE17__do_get_unsignedImEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE17__do_get_unsignedItEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE17__do_get_unsignedIyEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE23__do_get_floating_pointIdEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE23__do_get_floating_pointIeEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE23__do_get_floating_pointIfEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE15__do_get_signedIlEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE15__do_get_signedIxEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE17__do_get_unsignedIjEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE17__do_get_unsignedImEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE17__do_get_unsignedItEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE17__do_get_unsignedIyEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE23__do_get_floating_pointIdEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE23__do_get_floating_pointIeEES4_S4_S4_RNS_8ios_baseERjRT_
  Symbol removed: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE23__do_get_floating_pointIfEES4_S4_S4_RNS_8ios_baseERjRT_

  <arch>-apple-darwin
  -------------------
  No changes

-----------
Version 4.0
-----------

* r290651 - Add _LIBCPP_ASSERT debug handling functions

  All Platforms
  -------------
  Symbol added: _ZNSt3__124__libcpp_debug_exceptionC2ERKNS_19__libcpp_debug_infoE
  Symbol added: _ZNSt3__124__libcpp_debug_exceptionD1Ev
  Symbol added: _ZTINSt3__124__libcpp_debug_exceptionE
  Symbol added: _ZNSt3__129__libcpp_throw_debug_functionERKNS_19__libcpp_debug_infoE
  Symbol added: _ZNSt3__124__libcpp_debug_exceptionD2Ev
  Symbol added: _ZNSt3__129__libcpp_abort_debug_functionERKNS_19__libcpp_debug_infoE
  Symbol added: _ZNSt3__124__libcpp_debug_exceptionC2ERKS0_
  Symbol added: _ZNSt3__124__libcpp_debug_exceptionC1Ev
  Symbol added: _ZNSt3__124__libcpp_debug_exceptionC1ERKNS_19__libcpp_debug_infoE
  Symbol added: _ZNSt3__124__libcpp_debug_exceptionC2Ev
  Symbol added: _ZTSNSt3__124__libcpp_debug_exceptionE
  Symbol added: _ZNSt3__123__libcpp_debug_functionE
  Symbol added: _ZNKSt3__124__libcpp_debug_exception4whatEv
  Symbol added: _ZNSt3__124__libcpp_debug_exceptionC1ERKS0_
  Symbol added: _ZNSt3__124__libcpp_debug_exceptionD0Ev
  Symbol added: _ZTVNSt3__124__libcpp_debug_exceptionE
  Symbol added: _ZNSt3__127__libcpp_set_debug_functionEPFvRKNS_19__libcpp_debug_infoEE

* r288547 - Implement C++17 <variant>

  All Platforms
  -------------
  Symbol added: _ZTVSt18bad_variant_access
  Symbol added: _ZTISt18bad_variant_access
  Symbol added: _ZTSSt18bad_variant_access
  Symbol added: _ZNKSt18bad_variant_access4whatEv

* r285537 - Remove std::string::append template methods which should be inline

  These functions should never have had visible definitions in the dylib but
  since they were previously not specified with 'inline' they accidentally
  got emitted. This change is non-ABI breaking because every "linkage unit"
  must contain its own definition.

  x86_64-linux-gnu
  ----------------
  Symbol removed: _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendIPcEENS_9enable_ifIXaasr21__is_forward_iteratorIT_EE5valuesr38__libcpp_string_gets_noexcept_iteratorIS9_EE5valueERS5_E4typeES9_S9_
  Symbol removed: _ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6appendIPwEENS_9enable_ifIXaasr21__is_forward_iteratorIT_EE5valuesr38__libcpp_string_gets_noexcept_iteratorIS9_EE5valueERS5_E4typeES9_S9_

  <arch>-apple-darwin
  -------------------
  No changes

* r285101 - Add -fvisibility-inlines-hidden when building libc++.

  Although this change removes symbols, it should still be non-ABI breaking
  since all of the definitions removed are inline functions. For this reason
  removing these symbols is safe because every "linkage unit" which uses these
  functions will contain their own definition.

  x86_64-linux-gnu
  ----------------
  Symbol removed: _ZNSt12bad_any_castD0Ev
  Symbol removed: _ZNSt12experimental15fundamentals_v112bad_any_castD0Ev
  Symbol removed: _ZNSt3__114__codecvt_utf8IDiED0Ev
  Symbol removed: _ZNSt3__114__codecvt_utf8IDsED0Ev
  Symbol removed: _ZNSt3__114__codecvt_utf8IwED0Ev
  Symbol removed: _ZNSt3__115__codecvt_utf16IDiLb0EED0Ev
  Symbol removed: _ZNSt3__115__codecvt_utf16IDiLb1EED0Ev
  Symbol removed: _ZNSt3__115__codecvt_utf16IDsLb0EED0Ev
  Symbol removed: _ZNSt3__115__codecvt_utf16IDsLb1EED0Ev
  Symbol removed: _ZNSt3__115__codecvt_utf16IwLb0EED0Ev
  Symbol removed: _ZNSt3__115__codecvt_utf16IwLb1EED0Ev
  Symbol removed: _ZNSt3__117__assoc_sub_stateD0Ev
  Symbol removed: _ZNSt3__117__assoc_sub_stateD2Ev
  Symbol removed: _ZNSt3__117__libcpp_sscanf_lEPKcP15__locale_structS1_z
  Symbol removed: _ZNSt3__119__libcpp_asprintf_lEPPcP15__locale_structPKcz
  Symbol removed: _ZNSt3__119__libcpp_snprintf_lEPcmP15__locale_structPKcz
  Symbol removed: _ZNSt3__120__codecvt_utf8_utf16IDiED0Ev
  Symbol removed: _ZNSt3__120__codecvt_utf8_utf16IDsED0Ev
  Symbol removed: _ZNSt3__120__codecvt_utf8_utf16IwED0Ev

  <arch>-apple-darwin
  -------------------
  No Changes - inline symbols are already hidden

* r284206 - Implement C++17 aligned allocation in <new>

  x86_64-linux-gnu
  ----------------
  Symbol added: _ZdaPvSt11align_val_t
  Symbol added: _ZdlPvSt11align_val_t
  Symbol added: _ZnamSt11align_val_t
  Symbol added: _ZdaPvmSt11align_val_t
  Symbol added: _ZdlPvmSt11align_val_t
  Symbol added: _ZdlPvSt11align_val_tRKSt9nothrow_t
  Symbol added: _ZnwmSt11align_val_tRKSt9nothrow_t
  Symbol added: _ZnamSt11align_val_tRKSt9nothrow_t
  Symbol added: _ZdaPvSt11align_val_tRKSt9nothrow_t
  Symbol added: _ZnwmSt11align_val_t

* r283980 - Implement C++17 <optional>

  x86_64-linux-gnu
  ----------------
  Symbol added: _ZTISt19bad_optional_access
  Symbol added: _ZNSt19bad_optional_accessD0Ev
  Symbol added: _ZNSt19bad_optional_accessD1Ev
  Symbol added: _ZNSt19bad_optional_accessD2Ev
  Symbol added: _ZTVSt19bad_optional_access
  Symbol added: _ZTSSt19bad_optional_access

* r278310 - Implement C++17 <any>

  x86_64-linux-gnu
  ----------------
  Symbol added: _ZNKSt12bad_any_cast4whatEv
  Symbol added: _ZNSt12bad_any_castD0Ev
  Symbol added: _ZTISt12bad_any_cast
  Symbol added: _ZTSSt12bad_any_cast
  Symbol added: _ZTVSt12bad_any_cast

* r295398 - Remove basic_string::insert and basic_string::replace template methods which should be inline.

  These functions should never have had visible definitions in the dylib but
  since they were previously not specified with 'inline' they accidentally
  got emitted. This change is non-ABI breaking because every "linkage unit"
  must contain its own definition.

  x86_64-linux-gnu
  ----------------
  Symbol removed: _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6insertIPKcEENS_9enable_ifIXaasr21__is_forward_iteratorIT_EE5valuesr38__libcpp_string_gets_noexcept_iteratorISA_EE5valueENS_11__wrap_iterIPcEEE4typeENSB_IS8_EESA_SA_
  Symbol removed: _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7replaceIPKcEENS_9enable_ifIXsr19__is_input_iteratorIT_EE5valueERS5_E4typeENS_11__wrap_iterIS8_EESF_SA_SA_
  Symbol removed: _ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6insertIPKwEENS_9enable_ifIXaasr21__is_forward_iteratorIT_EE5valuesr38__libcpp_string_gets_noexcept_iteratorISA_EE5valueENS_11__wrap_iterIPwEEE4typeENSB_IS8_EESA_SA_
  Symbol removed: _ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE7replaceIPKwEENS_9enable_ifIXsr19__is_input_iteratorIT_EE5valueERS5_E4typeENS_11__wrap_iterIS8_EESF_SA_SA_
