1ABI Changelog 2============== 3This changelog contains information about ABI changes in libc++. Specifically 4the addition and deletion of symbols from the libc++ dylib. 5 6Each entry should start with the revision number followed by a description of 7the change. The entry should contain a summary of the ABI changes made, 8including what symbols were added, removed, or changed. 9 10To generate a summary, re-generate the new ABI list using the 11`generate-cxx-abilist` target, and look at the diff. 12 13New entries should be added directly below the "Version" header. 14 15------------ 16Version 12.0 17------------ 18 19* [libc++] [P0482] [C++20] Implement missing bits for codecvt and codecvt_byname. 20 21 This commit added new instantiations with char8_t for classes codecvt and 22 codecvt_byname in <locale> in the library. 23 24 x86_64-apple-apple-darwin 25 ------------------------- 26 Symbol added: __ZNKSt3__17codecvtIDiDu11__mbstate_tE10do_unshiftERS1_PDuS4_RS4_ 27 Symbol added: __ZNKSt3__17codecvtIDiDu11__mbstate_tE11do_encodingEv 28 Symbol added: __ZNKSt3__17codecvtIDiDu11__mbstate_tE13do_max_lengthEv 29 Symbol added: __ZNKSt3__17codecvtIDiDu11__mbstate_tE16do_always_noconvEv 30 Symbol added: __ZNKSt3__17codecvtIDiDu11__mbstate_tE5do_inERS1_PKDuS5_RS5_PDiS7_RS7_ 31 Symbol added: __ZNKSt3__17codecvtIDiDu11__mbstate_tE6do_outERS1_PKDiS5_RS5_PDuS7_RS7_ 32 Symbol added: __ZNKSt3__17codecvtIDiDu11__mbstate_tE9do_lengthERS1_PKDuS5_m 33 Symbol added: __ZNKSt3__17codecvtIDsDu11__mbstate_tE10do_unshiftERS1_PDuS4_RS4_ 34 Symbol added: __ZNKSt3__17codecvtIDsDu11__mbstate_tE11do_encodingEv 35 Symbol added: __ZNKSt3__17codecvtIDsDu11__mbstate_tE13do_max_lengthEv 36 Symbol added: __ZNKSt3__17codecvtIDsDu11__mbstate_tE16do_always_noconvEv 37 Symbol added: __ZNKSt3__17codecvtIDsDu11__mbstate_tE5do_inERS1_PKDuS5_RS5_PDsS7_RS7_ 38 Symbol added: __ZNKSt3__17codecvtIDsDu11__mbstate_tE6do_outERS1_PKDsS5_RS5_PDuS7_RS7_ 39 Symbol added: __ZNKSt3__17codecvtIDsDu11__mbstate_tE9do_lengthERS1_PKDuS5_m 40 Symbol added: __ZNSt3__114codecvt_bynameIDiDu11__mbstate_tED0Ev 41 Symbol added: __ZNSt3__114codecvt_bynameIDiDu11__mbstate_tED1Ev 42 Symbol added: __ZNSt3__114codecvt_bynameIDiDu11__mbstate_tED2Ev 43 Symbol added: __ZNSt3__114codecvt_bynameIDsDu11__mbstate_tED0Ev 44 Symbol added: __ZNSt3__114codecvt_bynameIDsDu11__mbstate_tED1Ev 45 Symbol added: __ZNSt3__114codecvt_bynameIDsDu11__mbstate_tED2Ev 46 Symbol added: __ZNSt3__17codecvtIDiDu11__mbstate_tE2idE 47 Symbol added: __ZNSt3__17codecvtIDiDu11__mbstate_tED0Ev 48 Symbol added: __ZNSt3__17codecvtIDiDu11__mbstate_tED1Ev 49 Symbol added: __ZNSt3__17codecvtIDiDu11__mbstate_tED2Ev 50 Symbol added: __ZNSt3__17codecvtIDsDu11__mbstate_tE2idE 51 Symbol added: __ZNSt3__17codecvtIDsDu11__mbstate_tED0Ev 52 Symbol added: __ZNSt3__17codecvtIDsDu11__mbstate_tED1Ev 53 Symbol added: __ZNSt3__17codecvtIDsDu11__mbstate_tED2Ev 54 Symbol added: __ZTINSt3__114codecvt_bynameIDiDu11__mbstate_tEE 55 Symbol added: __ZTINSt3__114codecvt_bynameIDsDu11__mbstate_tEE 56 Symbol added: __ZTINSt3__17codecvtIDiDu11__mbstate_tEE 57 Symbol added: __ZTINSt3__17codecvtIDsDu11__mbstate_tEE 58 Symbol added: __ZTSNSt3__17codecvtIDiDu11__mbstate_tEE 59 Symbol added: __ZTSNSt3__17codecvtIDsDu11__mbstate_tEE 60 Symbol added: __ZTVNSt3__114codecvt_bynameIDiDu11__mbstate_tEE 61 Symbol added: __ZTVNSt3__114codecvt_bynameIDsDu11__mbstate_tEE 62 Symbol added: __ZTVNSt3__17codecvtIDiDu11__mbstate_tEE 63 Symbol added: __ZTVNSt3__17codecvtIDsDu11__mbstate_tEE 64 65 x86_64-unknown-linux-gnu 66 ------------------------ 67 Symbol added: _ZTINSt3__17codecvtIDsDu11__mbstate_tEE 68 Symbol added: _ZTINSt3__114codecvt_bynameIDsDu11__mbstate_tEE 69 Symbol added: _ZTINSt3__17codecvtIDiDu11__mbstate_tEE 70 Symbol added: _ZTINSt3__114codecvt_bynameIDiDu11__mbstate_tEE 71 Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE9do_lengthERS1_PKDuS5_m 72 Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE13do_max_lengthEv 73 Symbol added: _ZNSt3__17codecvtIDiDu11__mbstate_tE2idE 74 Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE16do_always_noconvEv 75 Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE13do_max_lengthEv 76 Symbol added: _ZNSt3__17codecvtIDsDu11__mbstate_tE2idE 77 Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE6do_outERS1_PKDsS5_RS5_PDuS7_RS7_ 78 Symbol added: _ZNSt3__17codecvtIDiDu11__mbstate_tED0Ev 79 Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE5do_inERS1_PKDuS5_RS5_PDiS7_RS7_ 80 Symbol added: _ZNSt3__114codecvt_bynameIDsDu11__mbstate_tED0Ev 81 Symbol added: _ZTSNSt3__17codecvtIDiDu11__mbstate_tEE 82 Symbol added: _ZNSt3__17codecvtIDiDu11__mbstate_tED1Ev 83 Symbol added: _ZNSt3__114codecvt_bynameIDsDu11__mbstate_tED1Ev 84 Symbol added: _ZTVNSt3__17codecvtIDiDu11__mbstate_tEE 85 Symbol added: _ZNSt3__17codecvtIDiDu11__mbstate_tED2Ev 86 Symbol added: _ZNSt3__17codecvtIDsDu11__mbstate_tED0Ev 87 Symbol added: _ZNSt3__114codecvt_bynameIDsDu11__mbstate_tED2Ev 88 Symbol added: _ZTVNSt3__114codecvt_bynameIDsDu11__mbstate_tEE 89 Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE16do_always_noconvEv 90 Symbol added: _ZNSt3__17codecvtIDsDu11__mbstate_tED1Ev 91 Symbol added: _ZTVNSt3__114codecvt_bynameIDiDu11__mbstate_tEE 92 Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE11do_encodingEv 93 Symbol added: _ZNSt3__114codecvt_bynameIDiDu11__mbstate_tED0Ev 94 Symbol added: _ZNSt3__17codecvtIDsDu11__mbstate_tED2Ev 95 Symbol added: _ZNSt3__114codecvt_bynameIDiDu11__mbstate_tED1Ev 96 Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE9do_lengthERS1_PKDuS5_m 97 Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE10do_unshiftERS1_PDuS4_RS4_ 98 Symbol added: _ZTSNSt3__17codecvtIDsDu11__mbstate_tEE 99 Symbol added: _ZNSt3__114codecvt_bynameIDiDu11__mbstate_tED2Ev 100 Symbol added: _ZTVNSt3__17codecvtIDsDu11__mbstate_tEE 101 Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE6do_outERS1_PKDiS5_RS5_PDuS7_RS7_ 102 Symbol added: _ZTSNSt3__114codecvt_bynameIDsDu11__mbstate_tEE 103 Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE11do_encodingEv 104 Symbol added: _ZNKSt3__17codecvtIDiDu11__mbstate_tE10do_unshiftERS1_PDuS4_RS4_ 105 Symbol added: _ZNKSt3__17codecvtIDsDu11__mbstate_tE5do_inERS1_PKDuS5_RS5_PDsS7_RS7_ 106 Symbol added: _ZTSNSt3__114codecvt_bynameIDiDu11__mbstate_tEE 107 108* XXXXXXX - [libc++] Instantiate additional <iostream> members in the dylib 109 110 This commit added new explicit instantiations for classes in <iostream> in 111 the library. This was done after noticing that many programs that used streams 112 ended up containing weak definitions of these classes, which has a negative 113 impact on both code size and load times. This change is not an ABI break, 114 since we are just adding additional symbols. 115 116 x86_64-apple-apple-darwin 117 ------------------------- 118 Symbol added: __ZNKSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE3strEv 119 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE11__read_modeEv 120 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE12__write_modeEv 121 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4openEPKcj 122 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4swapERS3_ 123 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4syncEv 124 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE5closeEv 125 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE5imbueERKNS_6localeE 126 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE6setbufEPcl 127 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE7seekoffExNS_8ios_base7seekdirEj 128 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE7seekposENS_4fposI11__mbstate_tEEj 129 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE8overflowEi 130 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE9pbackfailEi 131 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE9underflowEv 132 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC1EOS3_ 133 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC1Ev 134 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC2EOS3_ 135 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC2Ev 136 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED0Ev 137 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED1Ev 138 Symbol added: __ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED2Ev 139 Symbol added: __ZNSt3__114basic_ifstreamIcNS_11char_traitsIcEEE4openEPKcj 140 Symbol added: __ZNSt3__114basic_ifstreamIcNS_11char_traitsIcEEE4openERKNS_12basic_stringIcS2_NS_9allocatorIcEEEEj 141 Symbol added: __ZNSt3__114basic_ofstreamIcNS_11char_traitsIcEEE4openEPKcj 142 Symbol added: __ZNSt3__114basic_ofstreamIcNS_11char_traitsIcEEE4openERKNS_12basic_stringIcS2_NS_9allocatorIcEEEEj 143 Symbol added: __ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE3strERKNS_12basic_stringIcS2_S4_EE 144 Symbol added: __ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE4swapERS5_ 145 Symbol added: __ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE7seekoffExNS_8ios_base7seekdirEj 146 Symbol added: __ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE8overflowEi 147 Symbol added: __ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE9pbackfailEi 148 Symbol added: __ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE9underflowEv 149 Symbol added: __ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEC1EOS5_ 150 Symbol added: __ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_ 151 Symbol added: __ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_ 152 Symbol added: __ZNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_ 153 Symbol added: __ZNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_ 154 Symbol added: __ZNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_ 155 Symbol added: __ZTCNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE0_NS_13basic_istreamIcS2_EE 156 Symbol added: __ZTCNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE0_NS_13basic_ostreamIcS2_EE 157 Symbol added: __ZTCNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_13basic_istreamIcS2_EE 158 Symbol added: __ZTCNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_14basic_iostreamIcS2_EE 159 Symbol added: __ZTCNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE16_NS_13basic_ostreamIcS2_EE 160 Symbol added: __ZTCNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_13basic_istreamIcS2_EE 161 Symbol added: __ZTCNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_13basic_ostreamIcS2_EE 162 Symbol added: __ZTINSt3__113basic_filebufIcNS_11char_traitsIcEEEE 163 Symbol added: __ZTINSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE 164 Symbol added: __ZTINSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE 165 Symbol added: __ZTINSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEE 166 Symbol added: __ZTINSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 167 Symbol added: __ZTINSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 168 Symbol added: __ZTINSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 169 Symbol added: __ZTSNSt3__113basic_filebufIcNS_11char_traitsIcEEEE 170 Symbol added: __ZTSNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE 171 Symbol added: __ZTSNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE 172 Symbol added: __ZTSNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEE 173 Symbol added: __ZTSNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 174 Symbol added: __ZTSNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 175 Symbol added: __ZTSNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 176 Symbol added: __ZTTNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE 177 Symbol added: __ZTTNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE 178 Symbol added: __ZTTNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 179 Symbol added: __ZTTNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 180 Symbol added: __ZTTNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 181 Symbol added: __ZTVNSt3__113basic_filebufIcNS_11char_traitsIcEEEE 182 Symbol added: __ZTVNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE 183 Symbol added: __ZTVNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE 184 Symbol added: __ZTVNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEE 185 Symbol added: __ZTVNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 186 Symbol added: __ZTVNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 187 Symbol added: __ZTVNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 188 189 x86_64-unknown-linux-gnu 190 ------------------------ 191 Symbol added: _ZNKSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE3strEv 192 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE11__read_modeEv 193 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE12__write_modeEv 194 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4openEPKcj 195 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4swapERS3_ 196 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE4syncEv 197 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE5closeEv 198 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE5imbueERKNS_6localeE 199 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE6setbufEPcl 200 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE7seekoffExNS_8ios_base7seekdirEj 201 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE7seekposENS_4fposI11__mbstate_tEEj 202 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE8overflowEi 203 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE9pbackfailEi 204 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEE9underflowEv 205 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC1EOS3_ 206 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC1Ev 207 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC2EOS3_ 208 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEEC2Ev 209 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED0Ev 210 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED1Ev 211 Symbol added: _ZNSt3__113basic_filebufIcNS_11char_traitsIcEEED2Ev 212 Symbol added: _ZNSt3__114basic_ifstreamIcNS_11char_traitsIcEEE4openEPKcj 213 Symbol added: _ZNSt3__114basic_ifstreamIcNS_11char_traitsIcEEE4openERKNS_12basic_stringIcS2_NS_9allocatorIcEEEEj 214 Symbol added: _ZNSt3__114basic_ofstreamIcNS_11char_traitsIcEEE4openEPKcj 215 Symbol added: _ZNSt3__114basic_ofstreamIcNS_11char_traitsIcEEE4openERKNS_12basic_stringIcS2_NS_9allocatorIcEEEEj 216 Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE3strERKNS_12basic_stringIcS2_S4_EE 217 Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE4swapERS5_ 218 Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE7seekoffExNS_8ios_base7seekdirEj 219 Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE8overflowEi 220 Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE9pbackfailEi 221 Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEE9underflowEv 222 Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEC1EOS5_ 223 Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEC2EOS5_ 224 Symbol added: _ZNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_ 225 Symbol added: _ZNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_ 226 Symbol added: _ZNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_ 227 Symbol added: _ZNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEaSEOS5_ 228 Symbol added: _ZTCNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE0_NS_13basic_istreamIcS2_EE 229 Symbol added: _ZTCNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE0_NS_13basic_ostreamIcS2_EE 230 Symbol added: _ZTCNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_13basic_istreamIcS2_EE 231 Symbol added: _ZTCNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_14basic_iostreamIcS2_EE 232 Symbol added: _ZTCNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE16_NS_13basic_ostreamIcS2_EE 233 Symbol added: _ZTCNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_13basic_istreamIcS2_EE 234 Symbol added: _ZTCNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE0_NS_13basic_ostreamIcS2_EE 235 Symbol added: _ZTINSt3__113basic_filebufIcNS_11char_traitsIcEEEE 236 Symbol added: _ZTINSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE 237 Symbol added: _ZTINSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE 238 Symbol added: _ZTINSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEE 239 Symbol added: _ZTINSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 240 Symbol added: _ZTINSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 241 Symbol added: _ZTINSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 242 Symbol added: _ZTSNSt3__113basic_filebufIcNS_11char_traitsIcEEEE 243 Symbol added: _ZTSNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE 244 Symbol added: _ZTSNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE 245 Symbol added: _ZTSNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEE 246 Symbol added: _ZTSNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 247 Symbol added: _ZTSNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 248 Symbol added: _ZTSNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 249 Symbol added: _ZTTNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE 250 Symbol added: _ZTTNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE 251 Symbol added: _ZTTNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 252 Symbol added: _ZTTNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 253 Symbol added: _ZTTNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 254 Symbol added: _ZTVNSt3__113basic_filebufIcNS_11char_traitsIcEEEE 255 Symbol added: _ZTVNSt3__114basic_ifstreamIcNS_11char_traitsIcEEEE 256 Symbol added: _ZTVNSt3__114basic_ofstreamIcNS_11char_traitsIcEEEE 257 Symbol added: _ZTVNSt3__115basic_stringbufIcNS_11char_traitsIcEENS_9allocatorIcEEEE 258 Symbol added: _ZTVNSt3__118basic_stringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 259 Symbol added: _ZTVNSt3__119basic_istringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 260 Symbol added: _ZTVNSt3__119basic_ostringstreamIcNS_11char_traitsIcEENS_9allocatorIcEEEE 261 262* 9b40ee8eb0c1 - [libc++] Define new/delete in libc++abi only by default 263 264 By default, libc++ does not include the definition for new and delete anymore. 265 Those were previously defined in both libc++ and libc++abi, which was an 266 ODR violation. 267 268 x86_64-apple-apple-darwin 269 ------------------------- 270 The following symbols are now re-exported from libc++abi instead of exported 271 by libc++ directly (this should not be an ABI break): 272 273 Symbol moved: __ZdaPv 274 Symbol moved: __ZdaPvm 275 Symbol moved: __ZdaPvmSt11align_val_t 276 Symbol moved: __ZdaPvRKSt9nothrow_t 277 Symbol moved: __ZdaPvSt11align_val_t 278 Symbol moved: __ZdaPvSt11align_val_tRKSt9nothrow_t 279 Symbol moved: __ZdlPv 280 Symbol moved: __ZdlPvm 281 Symbol moved: __ZdlPvmSt11align_val_t 282 Symbol moved: __ZdlPvRKSt9nothrow_t 283 Symbol moved: __ZdlPvSt11align_val_t 284 Symbol moved: __ZdlPvSt11align_val_tRKSt9nothrow_t 285 Symbol moved: __Znam 286 Symbol moved: __ZnamRKSt9nothrow_t 287 Symbol moved: __ZnamSt11align_val_t 288 Symbol moved: __ZnamSt11align_val_tRKSt9nothrow_t 289 Symbol moved: __Znwm 290 Symbol moved: __ZnwmRKSt9nothrow_t 291 Symbol moved: __ZnwmSt11align_val_t 292 Symbol moved: __ZnwmSt11align_val_tRKSt9nothrow_t 293 294 x86_64-unknown-linux-gnu 295 ------------------------ 296 The following symbols were moved to libc++abi, but are NOT being re-exported 297 by libc++. This constitutes an ABI break if one links against libc++ but 298 not libc++abi. 299 300 Symbol moved: _ZdaPv 301 Symbol moved: _ZdaPvm 302 Symbol moved: _ZdaPvmSt11align_val_t 303 Symbol moved: _ZdaPvRKSt9nothrow_t 304 Symbol moved: _ZdaPvSt11align_val_t 305 Symbol moved: _ZdaPvSt11align_val_tRKSt9nothrow_t 306 Symbol moved: _ZdlPv 307 Symbol moved: _ZdlPvm 308 Symbol moved: _ZdlPvmSt11align_val_t 309 Symbol moved: _ZdlPvRKSt9nothrow_t 310 Symbol moved: _ZdlPvSt11align_val_t 311 Symbol moved: _ZdlPvSt11align_val_tRKSt9nothrow_t 312 Symbol moved: _Znam 313 Symbol moved: _ZnamRKSt9nothrow_t 314 Symbol moved: _ZnamSt11align_val_t 315 Symbol moved: _ZnamSt11align_val_tRKSt9nothrow_t 316 Symbol moved: _Znwm 317 Symbol moved: _ZnwmRKSt9nothrow_t 318 Symbol moved: _ZnwmSt11align_val_t 319 Symbol moved: _ZnwmSt11align_val_tRKSt9nothrow_t 320 321* 4f13b9992971 - [libc++] Simplify how we re-export symbols from libc++abi 322 323 We re-export some symbols that were exported from libc++abi but not from 324 libc++. Exporting new symbols is not an ABI break. 325 326 x86_64-apple-apple-darwin 327 ------------------------- 328 Symbol added: ___cxa_allocate_dependent_exception 329 Symbol added: ___cxa_free_dependent_exception 330 331------------ 332Version 10.0 333------------ 334 335* 54fa9ecd3088 - [libc++] Implementation of C++20's P1135R6 for libcxx 336 337 libc++ now implements P1135R6 (The C++20 Synchronization Library), which 338 adds a few symbols to the dylib. This is backwards-compatible since we're 339 just adding new symbols. 340 341 x86_64-unknown-linux-gnu 342 ------------------------ 343 TODO 344 345 x86_64-apple-apple-darwin 346 ------------------------- 347 Symbol added: __ZNSt3__120__libcpp_atomic_waitEPVKNS_17__cxx_atomic_implIxNS_22__cxx_atomic_base_implIxEEEEx 348 Symbol added: __ZNSt3__120__libcpp_atomic_waitEPVKvx 349 Symbol added: __ZNSt3__123__cxx_atomic_notify_allEPVKNS_17__cxx_atomic_implIxNS_22__cxx_atomic_base_implIxEEEE 350 Symbol added: __ZNSt3__123__cxx_atomic_notify_allEPVKv 351 Symbol added: __ZNSt3__123__cxx_atomic_notify_oneEPVKNS_17__cxx_atomic_implIxNS_22__cxx_atomic_base_implIxEEEE 352 Symbol added: __ZNSt3__123__cxx_atomic_notify_oneEPVKv 353 Symbol added: __ZNSt3__123__libcpp_atomic_monitorEPVKNS_17__cxx_atomic_implIxNS_22__cxx_atomic_base_implIxEEEE 354 Symbol added: __ZNSt3__123__libcpp_atomic_monitorEPVKv 355 Symbol added: __ZNSt3__131__arrive_barrier_algorithm_baseEPNS_24__barrier_algorithm_baseEh 356 Symbol added: __ZNSt3__132__destroy_barrier_algorithm_baseEPNS_24__barrier_algorithm_baseE 357 Symbol added: __ZNSt3__134__construct_barrier_algorithm_baseERl 358 359----------- 360Version 9.0 361----------- 362 363* r358690 - Re-rexport missing symbols from libc++abi 364 365 libc++ now re-exports `__cxa_throw_bad_array_new_length` and `__cxa_uncaught_exceptions`, 366 both of which are provided by libc++abi. This is not an ABI break because 367 we're just adding symbols. Also, this does mean that libc++ can't be linked 368 against an older version of libc++abi that doesn't provide those symbols, 369 however doing so is not supported anyway. 370 371 x86_64-unknown-linux-gnu 372 ------------------------ 373 TODO 374 375 x86_64-apple-apple-darwin 376 ------------------------- 377 Symbol added: ___cxa_throw_bad_array_new_length 378 Symbol added: ___cxa_uncaught_exceptions 379 380* r356518 - Integrate <filesystem> support into the shared library 381 382 This patch introduces support for <filesystem> into the shared library, 383 instead of requiring users to manually link against a static archive. As 384 such, new symbols required to implement <filesystem> are exported from 385 the shared library. 386 387 x86_64-unknown-linux-gnu 388 ------------------------ 389 Symbol added: _ZNKSt3__14__fs10filesystem18directory_iterator13__dereferenceEv 390 Symbol added: _ZNKSt3__14__fs10filesystem28recursive_directory_iterator13__dereferenceEv 391 Symbol added: _ZNKSt3__14__fs10filesystem28recursive_directory_iterator5depthEv 392 Symbol added: _ZNKSt3__14__fs10filesystem28recursive_directory_iterator7optionsEv 393 Symbol added: _ZNKSt3__14__fs10filesystem4path10__filenameEv 394 Symbol added: _ZNKSt3__14__fs10filesystem4path11__extensionEv 395 Symbol added: _ZNKSt3__14__fs10filesystem4path11__root_nameEv 396 Symbol added: _ZNKSt3__14__fs10filesystem4path13__parent_pathEv 397 Symbol added: _ZNKSt3__14__fs10filesystem4path15__relative_pathEv 398 Symbol added: _ZNKSt3__14__fs10filesystem4path15__root_path_rawEv 399 Symbol added: _ZNKSt3__14__fs10filesystem4path16__root_directoryEv 400 Symbol added: _ZNKSt3__14__fs10filesystem4path16lexically_normalEv 401 Symbol added: _ZNKSt3__14__fs10filesystem4path18lexically_relativeERKS2_ 402 Symbol added: _ZNKSt3__14__fs10filesystem4path3endEv 403 Symbol added: _ZNKSt3__14__fs10filesystem4path5beginEv 404 Symbol added: _ZNKSt3__14__fs10filesystem4path6__stemEv 405 Symbol added: _ZNKSt3__14__fs10filesystem4path9__compareENS_17basic_string_viewIcNS_11char_traitsIcEEEE 406 Symbol added: _ZNSt3__14__fs10filesystem10__absoluteERKNS1_4pathEPNS_10error_codeE 407 Symbol added: _ZNSt3__14__fs10filesystem10hash_valueERKNS1_4pathE 408 Symbol added: _ZNSt3__14__fs10filesystem11__canonicalERKNS1_4pathEPNS_10error_codeE 409 Symbol added: _ZNSt3__14__fs10filesystem11__copy_fileERKNS1_4pathES4_NS1_12copy_optionsEPNS_10error_codeE 410 Symbol added: _ZNSt3__14__fs10filesystem11__file_sizeERKNS1_4pathEPNS_10error_codeE 411 Symbol added: _ZNSt3__14__fs10filesystem12__equivalentERKNS1_4pathES4_PNS_10error_codeE 412 Symbol added: _ZNSt3__14__fs10filesystem12__remove_allERKNS1_4pathEPNS_10error_codeE 413 Symbol added: _ZNSt3__14__fs10filesystem13__fs_is_emptyERKNS1_4pathEPNS_10error_codeE 414 Symbol added: _ZNSt3__14__fs10filesystem13__permissionsERKNS1_4pathENS1_5permsENS1_12perm_optionsEPNS_10error_codeE 415 Symbol added: _ZNSt3__14__fs10filesystem13__resize_fileERKNS1_4pathEmPNS_10error_codeE 416 Symbol added: _ZNSt3__14__fs10filesystem14__copy_symlinkERKNS1_4pathES4_PNS_10error_codeE 417 Symbol added: _ZNSt3__14__fs10filesystem14__current_pathEPNS_10error_codeE 418 Symbol added: _ZNSt3__14__fs10filesystem14__current_pathERKNS1_4pathEPNS_10error_codeE 419 Symbol added: _ZNSt3__14__fs10filesystem14__read_symlinkERKNS1_4pathEPNS_10error_codeE 420 Symbol added: _ZNSt3__14__fs10filesystem15directory_entry12__do_refreshEv 421 Symbol added: _ZNSt3__14__fs10filesystem16_FilesystemClock3nowEv 422 Symbol added: _ZNSt3__14__fs10filesystem16_FilesystemClock9is_steadyE 423 Symbol added: _ZNSt3__14__fs10filesystem16__create_symlinkERKNS1_4pathES4_PNS_10error_codeE 424 Symbol added: _ZNSt3__14__fs10filesystem16__symlink_statusERKNS1_4pathEPNS_10error_codeE 425 Symbol added: _ZNSt3__14__fs10filesystem16filesystem_error13__create_whatEi 426 Symbol added: _ZNSt3__14__fs10filesystem16filesystem_errorD0Ev 427 Symbol added: _ZNSt3__14__fs10filesystem16filesystem_errorD1Ev 428 Symbol added: _ZNSt3__14__fs10filesystem16filesystem_errorD2Ev 429 Symbol added: _ZNSt3__14__fs10filesystem17__hard_link_countERKNS1_4pathEPNS_10error_codeE 430 Symbol added: _ZNSt3__14__fs10filesystem17__last_write_timeERKNS1_4pathENS_6chrono10time_pointINS1_16_FilesystemClockENS5_8durationInNS_5ratioILl1ELl1000000000EEEEEEEPNS_10error_codeE 431 Symbol added: _ZNSt3__14__fs10filesystem17__last_write_timeERKNS1_4pathEPNS_10error_codeE 432 Symbol added: _ZNSt3__14__fs10filesystem18__create_directoryERKNS1_4pathEPNS_10error_codeE 433 Symbol added: _ZNSt3__14__fs10filesystem18__create_directoryERKNS1_4pathES4_PNS_10error_codeE 434 Symbol added: _ZNSt3__14__fs10filesystem18__create_hard_linkERKNS1_4pathES4_PNS_10error_codeE 435 Symbol added: _ZNSt3__14__fs10filesystem18__weakly_canonicalERKNS1_4pathEPNS_10error_codeE 436 Symbol added: _ZNSt3__14__fs10filesystem18directory_iterator11__incrementEPNS_10error_codeE 437 Symbol added: _ZNSt3__14__fs10filesystem18directory_iteratorC1ERKNS1_4pathEPNS_10error_codeENS1_17directory_optionsE 438 Symbol added: _ZNSt3__14__fs10filesystem18directory_iteratorC2ERKNS1_4pathEPNS_10error_codeENS1_17directory_optionsE 439 Symbol added: _ZNSt3__14__fs10filesystem20__create_directoriesERKNS1_4pathEPNS_10error_codeE 440 Symbol added: _ZNSt3__14__fs10filesystem21__temp_directory_pathEPNS_10error_codeE 441 Symbol added: _ZNSt3__14__fs10filesystem26__create_directory_symlinkERKNS1_4pathES4_PNS_10error_codeE 442 Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iterator11__incrementEPNS_10error_codeE 443 Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iterator15__try_recursionEPNS_10error_codeE 444 Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iterator5__popEPNS_10error_codeE 445 Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iterator9__advanceEPNS_10error_codeE 446 Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iteratorC1ERKNS1_4pathENS1_17directory_optionsEPNS_10error_codeE 447 Symbol added: _ZNSt3__14__fs10filesystem28recursive_directory_iteratorC2ERKNS1_4pathENS1_17directory_optionsEPNS_10error_codeE 448 Symbol added: _ZNSt3__14__fs10filesystem4path17replace_extensionERKS2_ 449 Symbol added: _ZNSt3__14__fs10filesystem4path19preferred_separatorE 450 Symbol added: _ZNSt3__14__fs10filesystem4path8iterator11__decrementEv 451 Symbol added: _ZNSt3__14__fs10filesystem4path8iterator11__incrementEv 452 Symbol added: _ZNSt3__14__fs10filesystem6__copyERKNS1_4pathES4_NS1_12copy_optionsEPNS_10error_codeE 453 Symbol added: _ZNSt3__14__fs10filesystem7__spaceERKNS1_4pathEPNS_10error_codeE 454 Symbol added: _ZNSt3__14__fs10filesystem8__removeERKNS1_4pathEPNS_10error_codeE 455 Symbol added: _ZNSt3__14__fs10filesystem8__renameERKNS1_4pathES4_PNS_10error_codeE 456 Symbol added: _ZNSt3__14__fs10filesystem8__statusERKNS1_4pathEPNS_10error_codeE 457 Symbol added: _ZTINSt3__14__fs10filesystem16filesystem_errorE 458 Symbol added: _ZTSNSt3__14__fs10filesystem16filesystem_errorE 459 Symbol added: _ZTVNSt3__14__fs10filesystem16filesystem_errorE 460 461 x86_64-apple-apple-darwin 462 ------------------------- 463 Symbol added: __ZNKSt3__14__fs10filesystem18directory_iterator13__dereferenceEv 464 Symbol added: __ZNKSt3__14__fs10filesystem28recursive_directory_iterator13__dereferenceEv 465 Symbol added: __ZNKSt3__14__fs10filesystem28recursive_directory_iterator5depthEv 466 Symbol added: __ZNKSt3__14__fs10filesystem28recursive_directory_iterator7optionsEv 467 Symbol added: __ZNKSt3__14__fs10filesystem4path10__filenameEv 468 Symbol added: __ZNKSt3__14__fs10filesystem4path11__extensionEv 469 Symbol added: __ZNKSt3__14__fs10filesystem4path11__root_nameEv 470 Symbol added: __ZNKSt3__14__fs10filesystem4path13__parent_pathEv 471 Symbol added: __ZNKSt3__14__fs10filesystem4path15__relative_pathEv 472 Symbol added: __ZNKSt3__14__fs10filesystem4path15__root_path_rawEv 473 Symbol added: __ZNKSt3__14__fs10filesystem4path16__root_directoryEv 474 Symbol added: __ZNKSt3__14__fs10filesystem4path16lexically_normalEv 475 Symbol added: __ZNKSt3__14__fs10filesystem4path18lexically_relativeERKS2_ 476 Symbol added: __ZNKSt3__14__fs10filesystem4path3endEv 477 Symbol added: __ZNKSt3__14__fs10filesystem4path5beginEv 478 Symbol added: __ZNKSt3__14__fs10filesystem4path6__stemEv 479 Symbol added: __ZNKSt3__14__fs10filesystem4path9__compareENS_17basic_string_viewIcNS_11char_traitsIcEEEE 480 Symbol added: __ZNSt3__14__fs10filesystem10__absoluteERKNS1_4pathEPNS_10error_codeE 481 Symbol added: __ZNSt3__14__fs10filesystem10hash_valueERKNS1_4pathE 482 Symbol added: __ZNSt3__14__fs10filesystem11__canonicalERKNS1_4pathEPNS_10error_codeE 483 Symbol added: __ZNSt3__14__fs10filesystem11__copy_fileERKNS1_4pathES4_NS1_12copy_optionsEPNS_10error_codeE 484 Symbol added: __ZNSt3__14__fs10filesystem11__file_sizeERKNS1_4pathEPNS_10error_codeE 485 Symbol added: __ZNSt3__14__fs10filesystem12__equivalentERKNS1_4pathES4_PNS_10error_codeE 486 Symbol added: __ZNSt3__14__fs10filesystem12__remove_allERKNS1_4pathEPNS_10error_codeE 487 Symbol added: __ZNSt3__14__fs10filesystem13__fs_is_emptyERKNS1_4pathEPNS_10error_codeE 488 Symbol added: __ZNSt3__14__fs10filesystem13__permissionsERKNS1_4pathENS1_5permsENS1_12perm_optionsEPNS_10error_codeE 489 Symbol added: __ZNSt3__14__fs10filesystem13__resize_fileERKNS1_4pathEmPNS_10error_codeE 490 Symbol added: __ZNSt3__14__fs10filesystem14__copy_symlinkERKNS1_4pathES4_PNS_10error_codeE 491 Symbol added: __ZNSt3__14__fs10filesystem14__current_pathEPNS_10error_codeE 492 Symbol added: __ZNSt3__14__fs10filesystem14__current_pathERKNS1_4pathEPNS_10error_codeE 493 Symbol added: __ZNSt3__14__fs10filesystem14__read_symlinkERKNS1_4pathEPNS_10error_codeE 494 Symbol added: __ZNSt3__14__fs10filesystem15directory_entry12__do_refreshEv 495 Symbol added: __ZNSt3__14__fs10filesystem16__create_symlinkERKNS1_4pathES4_PNS_10error_codeE 496 Symbol added: __ZNSt3__14__fs10filesystem16__symlink_statusERKNS1_4pathEPNS_10error_codeE 497 Symbol added: __ZNSt3__14__fs10filesystem16_FilesystemClock3nowEv 498 Symbol added: __ZNSt3__14__fs10filesystem16filesystem_error13__create_whatEi 499 Symbol added: __ZNSt3__14__fs10filesystem16filesystem_errorD0Ev 500 Symbol added: __ZNSt3__14__fs10filesystem16filesystem_errorD1Ev 501 Symbol added: __ZNSt3__14__fs10filesystem16filesystem_errorD2Ev 502 Symbol added: __ZNSt3__14__fs10filesystem17__hard_link_countERKNS1_4pathEPNS_10error_codeE 503 Symbol added: __ZNSt3__14__fs10filesystem17__last_write_timeERKNS1_4pathENS_6chrono10time_pointINS1_16_FilesystemClockENS5_8durationInNS_5ratioILl1ELl1000000000EEEEEEEPNS_10error_codeE 504 Symbol added: __ZNKSt3__14__fs10filesystem28recursive_directory_iterator5depthEv 505 Symbol added: __ZNKSt3__14__fs10filesystem28recursive_directory_iterator7optionsEv 506 Symbol added: __ZNKSt3__14__fs10filesystem4path10__filenameEv 507 Symbol added: __ZNKSt3__14__fs10filesystem4path11__extensionEv 508 Symbol added: __ZNKSt3__14__fs10filesystem4path11__root_nameEv 509 Symbol added: __ZNKSt3__14__fs10filesystem4path13__parent_pathEv 510 Symbol added: __ZNKSt3__14__fs10filesystem4path15__relative_pathEv 511 Symbol added: __ZNKSt3__14__fs10filesystem4path15__root_path_rawEv 512 Symbol added: __ZNKSt3__14__fs10filesystem4path16__root_directoryEv 513 Symbol added: __ZNKSt3__14__fs10filesystem4path16lexically_normalEv 514 Symbol added: __ZNKSt3__14__fs10filesystem4path18lexically_relativeERKS2_ 515 Symbol added: __ZNKSt3__14__fs10filesystem4path3endEv 516 Symbol added: __ZNKSt3__14__fs10filesystem4path5beginEv 517 Symbol added: __ZNKSt3__14__fs10filesystem4path6__stemEv 518 Symbol added: __ZNKSt3__14__fs10filesystem4path9__compareENS_17basic_string_viewIcNS_11char_traitsIcEEEE 519 Symbol added: __ZNSt3__14__fs10filesystem10__absoluteERKNS1_4pathEPNS_10error_codeE 520 Symbol added: __ZNSt3__14__fs10filesystem10hash_valueERKNS1_4pathE 521 Symbol added: __ZNSt3__14__fs10filesystem11__canonicalERKNS1_4pathEPNS_10error_codeE 522 Symbol added: __ZNSt3__14__fs10filesystem11__copy_fileERKNS1_4pathES4_NS1_12copy_optionsEPNS_10error_codeE 523 Symbol added: __ZNSt3__14__fs10filesystem11__file_sizeERKNS1_4pathEPNS_10error_codeE 524 Symbol added: __ZNSt3__14__fs10filesystem12__equivalentERKNS1_4pathES4_PNS_10error_codeE 525 Symbol added: __ZNSt3__14__fs10filesystem12__remove_allERKNS1_4pathEPNS_10error_codeE 526 Symbol added: __ZNSt3__14__fs10filesystem13__fs_is_emptyERKNS1_4pathEPNS_10error_codeE 527 Symbol added: __ZNSt3__14__fs10filesystem13__permissionsERKNS1_4pathENS1_5permsENS1_12perm_optionsEPNS_10error_codeE 528 Symbol added: __ZNSt3__14__fs10filesystem13__resize_fileERKNS1_4pathEmPNS_10error_codeE 529 Symbol added: __ZNSt3__14__fs10filesystem14__copy_symlinkERKNS1_4pathES4_PNS_10error_codeE 530 Symbol added: __ZNSt3__14__fs10filesystem14__current_pathEPNS_10error_codeE 531 Symbol added: __ZNSt3__14__fs10filesystem14__current_pathERKNS1_4pathEPNS_10error_codeE 532 Symbol added: __ZNSt3__14__fs10filesystem14__read_symlinkERKNS1_4pathEPNS_10error_codeE 533 Symbol added: __ZNSt3__14__fs10filesystem15directory_entry12__do_refreshEv 534 Symbol added: __ZNSt3__14__fs10filesystem16__create_symlinkERKNS1_4pathES4_PNS_10error_codeE 535 Symbol added: __ZNSt3__14__fs10filesystem16__symlink_statusERKNS1_4pathEPNS_10error_codeE 536 Symbol added: __ZNSt3__14__fs10filesystem16_FilesystemClock3nowEv 537 Symbol added: __ZNSt3__14__fs10filesystem16filesystem_error13__create_whatEi 538 Symbol added: __ZNSt3__14__fs10filesystem16filesystem_errorD0Ev 539 Symbol added: __ZNSt3__14__fs10filesystem16filesystem_errorD1Ev 540 Symbol added: __ZNSt3__14__fs10filesystem16filesystem_errorD2Ev 541 Symbol added: __ZNSt3__14__fs10filesystem17__hard_link_countERKNS1_4pathEPNS_10error_codeE 542 Symbol added: __ZNSt3__14__fs10filesystem17__last_write_timeERKNS1_4pathENS_6chrono10time_pointINS1_16_FilesystemClockENS5_8durationInNS_5ratioILl1ELl1000000000EEEEEEEPNS_10error_codeE 543 Symbol added: __ZNSt3__14__fs10filesystem17__last_write_timeERKNS1_4pathEPNS_10error_codeE 544 Symbol added: __ZNSt3__14__fs10filesystem18__create_directoryERKNS1_4pathEPNS_10error_codeE 545 Symbol added: __ZNSt3__14__fs10filesystem18__create_directoryERKNS1_4pathES4_PNS_10error_codeE 546 Symbol added: __ZNSt3__14__fs10filesystem18__create_hard_linkERKNS1_4pathES4_PNS_10error_codeE 547 Symbol added: __ZNSt3__14__fs10filesystem18__weakly_canonicalERKNS1_4pathEPNS_10error_codeE 548 Symbol added: __ZNSt3__14__fs10filesystem18directory_iterator11__incrementEPNS_10error_codeE 549 Symbol added: __ZNSt3__14__fs10filesystem18directory_iteratorC1ERKNS1_4pathEPNS_10error_codeENS1_17directory_optionsE 550 Symbol added: __ZNSt3__14__fs10filesystem18directory_iteratorC2ERKNS1_4pathEPNS_10error_codeENS1_17directory_optionsE 551 Symbol added: __ZNSt3__14__fs10filesystem20__create_directoriesERKNS1_4pathEPNS_10error_codeE 552 Symbol added: __ZNSt3__14__fs10filesystem21__temp_directory_pathEPNS_10error_codeE 553 Symbol added: __ZNSt3__14__fs10filesystem26__create_directory_symlinkERKNS1_4pathES4_PNS_10error_codeE 554 Symbol added: __ZNSt3__14__fs10filesystem28recursive_directory_iterator11__incrementEPNS_10error_codeE 555 Symbol added: __ZNSt3__14__fs10filesystem28recursive_directory_iterator15__try_recursionEPNS_10error_codeE 556 Symbol added: __ZNSt3__14__fs10filesystem28recursive_directory_iterator5__popEPNS_10error_codeE 557 Symbol added: __ZNSt3__14__fs10filesystem28recursive_directory_iterator9__advanceEPNS_10error_codeE 558 Symbol added: __ZNSt3__14__fs10filesystem28recursive_directory_iteratorC1ERKNS1_4pathENS1_17directory_optionsEPNS_10error_codeE 559 Symbol added: __ZNSt3__14__fs10filesystem28recursive_directory_iteratorC2ERKNS1_4pathENS1_17directory_optionsEPNS_10error_codeE 560 Symbol added: __ZNSt3__14__fs10filesystem4path17replace_extensionERKS2_ 561 Symbol added: __ZNSt3__14__fs10filesystem4path8iterator11__decrementEv 562 Symbol added: __ZNSt3__14__fs10filesystem4path8iterator11__incrementEv 563 Symbol added: __ZNSt3__14__fs10filesystem6__copyERKNS1_4pathES4_NS1_12copy_optionsEPNS_10error_codeE 564 Symbol added: __ZNSt3__14__fs10filesystem7__spaceERKNS1_4pathEPNS_10error_codeE 565 Symbol added: __ZNSt3__14__fs10filesystem8__removeERKNS1_4pathEPNS_10error_codeE 566 Symbol added: __ZNSt3__14__fs10filesystem8__renameERKNS1_4pathES4_PNS_10error_codeE 567 Symbol added: __ZNSt3__14__fs10filesystem8__statusERKNS1_4pathEPNS_10error_codeE 568 Symbol added: __ZNSt3__14__fs10filesystem16_FilesystemClock9is_steadyE 569 Symbol added: __ZNSt3__14__fs10filesystem4path19preferred_separatorE 570 Symbol added: __ZTINSt3__14__fs10filesystem16filesystem_errorE 571 Symbol added: __ZTSNSt3__14__fs10filesystem16filesystem_errorE 572 Symbol added: __ZTVNSt3__14__fs10filesystem16filesystem_errorE 573 574* r356417 - Remove exception throwing debug mode handler support. 575 576 The reason libc++ implemented a throwing debug mode handler was for ease of testing. Specifically, 577 I thought that if a debug violation aborted, we could only test one violation per file. This made 578 it impossible to test debug mode. Which throwing behavior we could test more! 579 580 However, the throwing approach didn't work either, since there are debug violations underneath noexcept 581 functions. This lead to the introduction of `_NOEXCEPT_DEBUG`, which was only noexcept when debug 582 mode was off. 583 584 Having thought more and having grown wiser, `_NOEXCEPT_DEBUG` was a horrible decision. It was 585 viral, it didn't cover all the cases it needed to, and it was observable to the user -- at worst 586 changing the behavior of their program. 587 588 This patch removes the throwing debug handler, and rewrites the debug tests using 'fork-ing' style 589 death tests. 590 591 All Platforms (ignoring versioning namespaces) 592 ---------------------------------------------- 593 Symbol added: _ZNKSt3__119__libcpp_debug_info4whatEv 594 Symbol removed: _ZNKSt3__124__libcpp_debug_exception4whatEv 595 Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC1ERKNS_19__libcpp_debug_infoE 596 Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC1ERKS0_ 597 Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC1Ev 598 Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC2ERKNS_19__libcpp_debug_infoE 599 Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC2ERKS0_ 600 Symbol removed: _ZNSt3__124__libcpp_debug_exceptionC2Ev 601 Symbol removed: _ZNSt3__124__libcpp_debug_exceptionD0Ev 602 Symbol removed: _ZNSt3__124__libcpp_debug_exceptionD1Ev 603 Symbol removed: _ZNSt3__124__libcpp_debug_exceptionD2Ev 604 Symbol removed: _ZNSt3__129__libcpp_throw_debug_functionERKNS_19__libcpp_debug_infoE 605 Symbol removed: _ZTINSt3__124__libcpp_debug_exceptionE 606 Symbol removed: _ZTSNSt3__124__libcpp_debug_exceptionE 607 Symbol removed: _ZTVNSt3__124__libcpp_debug_exceptionE 608 609 610 x86_64-apple-apple-darwin 611 ------------------------- 612 Symbol added: __ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E 613 Symbol removed: __ZNSt3__111__libcpp_db10__insert_cEPv 614 615* r355367 - Fix -fsanitize=vptr badness in <__debug> 616 617 This patch fixes a lifetime bug when inserting a new container into the debug database. It is 618 diagnosed by UBSAN when debug mode is enabled. This patch corrects how nodes are constructed 619 during insertion. 620 621 The fix requires unconditionally breaking the debug mode ABI. Users should not expect ABI 622 stability from debug mode. 623 624 625 x86_64-unknown-linux-gnu 626 ------------------------ 627 Symbol added: _ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E 628 Symbol removed: _ZNSt3__111__libcpp_db10__insert_cEPv 629 630 631 x86_64-apple-apple-darwin 632 ------------------------- 633 Symbol added: __ZNSt3__111__libcpp_db10__insert_cEPvPFPNS_8__c_nodeES1_S1_S3_E 634 Symbol removed: __ZNSt3__111__libcpp_db10__insert_cEPv 635 636 637----------- 638Version 8.0 639----------- 640 641* r347903 - Remove std::bad_array_length 642 643 The change removes the definition of std::bad_array_length (which never made 644 it into the standard) from the headers and the dylib. This is technically an 645 ABI break because the symbols are shipped starting with mac OSX 10.13, however 646 users couldn't be relying on the functionality because it is marked as being 647 unavailable using Clang's availability attribute. 648 649 x86_64-apple-darwin16.0 650 ----------------------- 651 Symbol removed: __ZNKSt16bad_array_length4whatEv 652 Symbol removed: __ZNKSt16bad_array_length4whatEv 653 Symbol removed: __ZNSt16bad_array_lengthC1Ev 654 Symbol removed: __ZNSt16bad_array_lengthC1Ev 655 Symbol removed: __ZNSt16bad_array_lengthC2Ev 656 Symbol removed: __ZNSt16bad_array_lengthC2Ev 657 Symbol removed: __ZNSt16bad_array_lengthD0Ev 658 Symbol removed: __ZNSt16bad_array_lengthD0Ev 659 Symbol removed: __ZNSt16bad_array_lengthD1Ev 660 Symbol removed: __ZNSt16bad_array_lengthD1Ev 661 Symbol removed: __ZNSt16bad_array_lengthD2Ev 662 Symbol removed: __ZNSt16bad_array_lengthD2Ev 663 Symbol removed: __ZTISt16bad_array_length 664 Symbol removed: __ZTISt16bad_array_length 665 Symbol removed: __ZTSSt16bad_array_length 666 Symbol removed: __ZTSSt16bad_array_length 667 Symbol removed: __ZTVSt16bad_array_length 668 Symbol removed: __ZTVSt16bad_array_length 669 670* r347395 - Making libc++ build under -fvisibility=hidden on Linux 671 672 The change marks several function templates as hidden. This removes symbols 673 from the shared library, but this is not an ABI break because it's impossible 674 for programs linking against libc++.so to actually depend on that symbol. 675 The reason is that the symbol is exported from the shared library through 676 an implicit instantiation present in the shared object itself only. Furthermore, 677 if a user's shared object was implicitly instantiating one of these functions, 678 marking that symbol as hidden would not be an ABI break for them because none 679 of their users could actually be using the symbol in their dylib (because 680 it's an implicit instantiation). 681 682 x86_64-linux-gnu 683 ---------------- 684 Symbol removed: _ZNSt3__125__num_get_signed_integralIlEET_PKcS3_Rji 685 Symbol removed: _ZNSt3__125__num_get_signed_integralIxEET_PKcS3_Rji 686 Symbol removed: _ZNSt3__127__num_get_unsigned_integralIjEET_PKcS3_Rji 687 Symbol removed: _ZNSt3__127__num_get_unsigned_integralImEET_PKcS3_Rji 688 Symbol removed: _ZNSt3__127__num_get_unsigned_integralItEET_PKcS3_Rji 689 Symbol removed: _ZNSt3__127__num_get_unsigned_integralIyEET_PKcS3_Rji 690 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIaaEEPaEEjT0_S5_S5_S5_S5_T_ 691 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIccEEPcEEjT0_S5_S5_S5_S5_T_ 692 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIddEEPdEEjT0_S5_S5_S5_S5_T_ 693 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIffEEPfEEjT0_S5_S5_S5_S5_T_ 694 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIhhEEPhEEjT0_S5_S5_S5_S5_T_ 695 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIiiEEPiEEjT0_S5_S5_S5_S5_T_ 696 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIjjEEPjEEjT0_S5_S5_S5_S5_T_ 697 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIllEEPlEEjT0_S5_S5_S5_S5_T_ 698 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessImmEEPmEEjT0_S5_S5_S5_S5_T_ 699 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIssEEPsEEjT0_S5_S5_S5_S5_T_ 700 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIttEEPtEEjT0_S5_S5_S5_S5_T_ 701 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIwwEEPwEEjT0_S5_S5_S5_S5_T_ 702 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIxxEEPxEEjT0_S5_S5_S5_S5_T_ 703 Symbol removed: _ZNSt3__17__sort5IRNS_6__lessIyyEEPyEEjT0_S5_S5_S5_S5_T_ 704 Symbol removed: _ZNSt3__1plIcNS_11char_traitsIcEENS_9allocatorIcEEEENS_12basic_stringIT_T0_T1_EERKS9_PKS6_ 705 Symbol removed: _ZSt18make_exception_ptrINSt3__112future_errorEESt13exception_ptrT_ 706 707* r345260 - Making libc++ build under -fvisibility=hidden on Mac OS 708 709 The change marks __thread_specific_ptr<__thread_struct>::__at_thread_exit(void*) 710 with hidden visibility. This removes a symbol from the shared libraries, 711 however this is not an ABI break because it's impossible for programs linking 712 against libc++.dylib to actually depend on that symbol. The reason is that 713 the symbol is exported from the shared library through an implicit 714 instantiation present in the dylib itself only. Furthermore, if a user's 715 dylib was implicitly instantiating __thread_specific_ptr<T>::__at_thread_exit 716 (because it's defined in the headers), marking that symbol as hidden would 717 not be an ABI break for them because none of their users could actually be 718 using the symbol in their dylib (because it's an implicit instantiation). 719 720 This change also marks __start_std_streams as hidden -- this variable is 721 only required to initialize the streams, and nobody should depend on it 722 from outside the dylib. 723 724 x86_64-linux-gnu 725 ---------------- 726 Symbol removed: _ZNSt3__121__thread_specific_ptrINS_15__thread_structEE16__at_thread_exitEPv 727 Symbol removed: _ZNSt3__119__start_std_streamsE 728 729 x86_64-apple-darwin16.0 730 ----------------------- 731 Symbol removed: __ZNSt3__221__thread_specific_ptrINS_15__thread_structEE16__at_thread_exitEPv 732 Symbol removed: __ZNSt3__119__start_std_streamsE 733 734----------- 735Version 7.0 736----------- 737 738* r338479 - Elementary string conversions for integral types 739 740 The change emits __u64toa and __u32toa under std::__1::__itoa. 741 742 x86_64-linux-gnu 743 ---------------- 744 Symbol added: _ZNSt3__16__itoa8__u64toaEmPc 745 Symbol added: _ZNSt3__16__itoa8__u32toaEjPc 746 747 x86_64-apple-darwin16.0 748 ----------------------- 749 Symbol added: __ZNSt3__16__itoa8__u64toaEyPc 750 Symbol added: __ZNSt3__16__itoa8__u32toaEjPc 751 752 753* r333467 - Fix embarrasing typo in uncaught_exceptions. 754 755 This bug caused __uncaught_exception to be ODR used instead of 756 __uncaught_exceptions. This change is non-ABI breaking because the symbols 757 for std::uncaught_exception and std::uncaught_exceptions haven't changed, 758 and because users shouldn't be depending directly on libc++ exporting 759 __uncaught_exception/__uncaught_exceptions. 760 761 All Platforms 762 ---------------- 763 SYMBOL REMOVED: __cxa_uncaught_exception 764 Symbol added: __cxa_uncaught_exceptions 765 766 767----------- 768Version 5.0 769----------- 770 771* r313500 - Fix undefined "___cxa_deleted_virtual" symbol in macosx 772 773 x86_64-linux-gnu 774 ---------------- 775 No changes 776 777 x86_64-apple-darwin16.0 778 ----------------------- 779 Symbol added: ___cxa_deleted_virtual 780 781* r296729 - Remove std::num_get template methods which should be inline 782 783 These functions should never have had visible definitions in the dylib but 784 since they were previously not specified with 'inline' they accidentally 785 got emitted. This change is non-ABI breaking because every "linkage unit" 786 must contain its own definition. 787 788 x86_64-linux-gnu 789 ---------------- 790 SYMBOL REMOVED: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE15__do_get_signedIlEES4_S4_S4_RNS_8ios_baseERjRT_ 791 SYMBOL REMOVED: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE15__do_get_signedIxEES4_S4_S4_RNS_8ios_baseERjRT_ 792 SYMBOL REMOVED: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE17__do_get_unsignedIjEES4_S4_S4_RNS_8ios_baseERjRT_ 793 SYMBOL REMOVED: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE17__do_get_unsignedImEES4_S4_S4_RNS_8ios_baseERjRT_ 794 SYMBOL REMOVED: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE17__do_get_unsignedItEES4_S4_S4_RNS_8ios_baseERjRT_ 795 SYMBOL REMOVED: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE17__do_get_unsignedIyEES4_S4_S4_RNS_8ios_baseERjRT_ 796 SYMBOL REMOVED: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE23__do_get_floating_pointIdEES4_S4_S4_RNS_8ios_baseERjRT_ 797 SYMBOL REMOVED: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE23__do_get_floating_pointIeEES4_S4_S4_RNS_8ios_baseERjRT_ 798 SYMBOL REMOVED: _ZNKSt3__17num_getIcNS_19istreambuf_iteratorIcNS_11char_traitsIcEEEEE23__do_get_floating_pointIfEES4_S4_S4_RNS_8ios_baseERjRT_ 799 SYMBOL REMOVED: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE15__do_get_signedIlEES4_S4_S4_RNS_8ios_baseERjRT_ 800 SYMBOL REMOVED: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE15__do_get_signedIxEES4_S4_S4_RNS_8ios_baseERjRT_ 801 SYMBOL REMOVED: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE17__do_get_unsignedIjEES4_S4_S4_RNS_8ios_baseERjRT_ 802 SYMBOL REMOVED: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE17__do_get_unsignedImEES4_S4_S4_RNS_8ios_baseERjRT_ 803 SYMBOL REMOVED: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE17__do_get_unsignedItEES4_S4_S4_RNS_8ios_baseERjRT_ 804 SYMBOL REMOVED: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE17__do_get_unsignedIyEES4_S4_S4_RNS_8ios_baseERjRT_ 805 SYMBOL REMOVED: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE23__do_get_floating_pointIdEES4_S4_S4_RNS_8ios_baseERjRT_ 806 SYMBOL REMOVED: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE23__do_get_floating_pointIeEES4_S4_S4_RNS_8ios_baseERjRT_ 807 SYMBOL REMOVED: _ZNKSt3__17num_getIwNS_19istreambuf_iteratorIwNS_11char_traitsIwEEEEE23__do_get_floating_pointIfEES4_S4_S4_RNS_8ios_baseERjRT_ 808 809 x86_64-apple-darwin16.0 810 ----------------------- 811 No changes 812 813----------- 814Version 4.0 815----------- 816 817* r290651 - Add _LIBCPP_ASSERT debug handling functions 818 819 All Platforms 820 ------------- 821 Symbol added: _ZNSt3__124__libcpp_debug_exceptionC2ERKNS_19__libcpp_debug_infoE 822 Symbol added: _ZNSt3__124__libcpp_debug_exceptionD1Ev 823 Symbol added: _ZTINSt3__124__libcpp_debug_exceptionE 824 Symbol added: _ZNSt3__129__libcpp_throw_debug_functionERKNS_19__libcpp_debug_infoE 825 Symbol added: _ZNSt3__124__libcpp_debug_exceptionD2Ev 826 Symbol added: _ZNSt3__129__libcpp_abort_debug_functionERKNS_19__libcpp_debug_infoE 827 Symbol added: _ZNSt3__124__libcpp_debug_exceptionC2ERKS0_ 828 Symbol added: _ZNSt3__124__libcpp_debug_exceptionC1Ev 829 Symbol added: _ZNSt3__124__libcpp_debug_exceptionC1ERKNS_19__libcpp_debug_infoE 830 Symbol added: _ZNSt3__124__libcpp_debug_exceptionC2Ev 831 Symbol added: _ZTSNSt3__124__libcpp_debug_exceptionE 832 Symbol added: _ZNSt3__123__libcpp_debug_functionE 833 Symbol added: _ZNKSt3__124__libcpp_debug_exception4whatEv 834 Symbol added: _ZNSt3__124__libcpp_debug_exceptionC1ERKS0_ 835 Symbol added: _ZNSt3__124__libcpp_debug_exceptionD0Ev 836 Symbol added: _ZTVNSt3__124__libcpp_debug_exceptionE 837 Symbol added: _ZNSt3__127__libcpp_set_debug_functionEPFvRKNS_19__libcpp_debug_infoEE 838 839* r288547 - Implement C++17 <variant> 840 841 All Platforms 842 ------------- 843 Symbol added: _ZTVSt18bad_variant_access 844 Symbol added: _ZTISt18bad_variant_access 845 Symbol added: _ZTSSt18bad_variant_access 846 Symbol added: _ZNKSt18bad_variant_access4whatEv 847 848* r285537 - Remove std::string::append template methods which should be inline 849 850 These functions should never have had visible definitions in the dylib but 851 since they were previously not specified with 'inline' they accidentally 852 got emitted. This change is non-ABI breaking because every "linkage unit" 853 must contain its own definition. 854 855 x86_64-linux-gnu 856 ---------------- 857 SYMBOL REMOVED: _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE6appendIPcEENS_9enable_ifIXaasr21__is_forward_iteratorIT_EE5valuesr38__libcpp_string_gets_noexcept_iteratorIS9_EE5valueERS5_E4typeES9_S9_ 858 SYMBOL REMOVED: _ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE6appendIPwEENS_9enable_ifIXaasr21__is_forward_iteratorIT_EE5valuesr38__libcpp_string_gets_noexcept_iteratorIS9_EE5valueERS5_E4typeES9_S9_ 859 860 x86_64-apple-darwin16.0 861 ----------------------- 862 No changes 863 864* r285101 - Add -fvisibility-inlines-hidden when building libc++. 865 866 Although this change removes symbols, it should still be non-ABI breaking 867 since all of the definitions removed are inline functions. For this reason 868 removing these symbols is safe because every "linkage unit" which uses these 869 functions will contain their own definition. 870 871 x86_64-linux-gnu 872 ---------------- 873 SYMBOL REMOVED: _ZNSt12bad_any_castD0Ev 874 SYMBOL REMOVED: _ZNSt12experimental15fundamentals_v112bad_any_castD0Ev 875 SYMBOL REMOVED: _ZNSt3__114__codecvt_utf8IDiED0Ev 876 SYMBOL REMOVED: _ZNSt3__114__codecvt_utf8IDsED0Ev 877 SYMBOL REMOVED: _ZNSt3__114__codecvt_utf8IwED0Ev 878 SYMBOL REMOVED: _ZNSt3__115__codecvt_utf16IDiLb0EED0Ev 879 SYMBOL REMOVED: _ZNSt3__115__codecvt_utf16IDiLb1EED0Ev 880 SYMBOL REMOVED: _ZNSt3__115__codecvt_utf16IDsLb0EED0Ev 881 SYMBOL REMOVED: _ZNSt3__115__codecvt_utf16IDsLb1EED0Ev 882 SYMBOL REMOVED: _ZNSt3__115__codecvt_utf16IwLb0EED0Ev 883 SYMBOL REMOVED: _ZNSt3__115__codecvt_utf16IwLb1EED0Ev 884 SYMBOL REMOVED: _ZNSt3__117__assoc_sub_stateD0Ev 885 SYMBOL REMOVED: _ZNSt3__117__assoc_sub_stateD2Ev 886 SYMBOL REMOVED: _ZNSt3__117__libcpp_sscanf_lEPKcP15__locale_structS1_z 887 SYMBOL REMOVED: _ZNSt3__119__libcpp_asprintf_lEPPcP15__locale_structPKcz 888 SYMBOL REMOVED: _ZNSt3__119__libcpp_snprintf_lEPcmP15__locale_structPKcz 889 SYMBOL REMOVED: _ZNSt3__120__codecvt_utf8_utf16IDiED0Ev 890 SYMBOL REMOVED: _ZNSt3__120__codecvt_utf8_utf16IDsED0Ev 891 SYMBOL REMOVED: _ZNSt3__120__codecvt_utf8_utf16IwED0Ev 892 893 x86_64-apple-darwin16.0 894 ----------------------- 895 No Changes - inline symbols are already hidden 896 897 898* r284206 - Implement C++17 aligned allocation in <new> 899 900 x86_64-linux-gnu 901 ---------------- 902 Symbol added: _ZdaPvSt11align_val_t 903 Symbol added: _ZdlPvSt11align_val_t 904 Symbol added: _ZnamSt11align_val_t 905 Symbol added: _ZdaPvmSt11align_val_t 906 Symbol added: _ZdlPvmSt11align_val_t 907 Symbol added: _ZdlPvSt11align_val_tRKSt9nothrow_t 908 Symbol added: _ZnwmSt11align_val_tRKSt9nothrow_t 909 Symbol added: _ZnamSt11align_val_tRKSt9nothrow_t 910 Symbol added: _ZdaPvSt11align_val_tRKSt9nothrow_t 911 Symbol added: _ZnwmSt11align_val_t 912 913* r283980 - Implement C++17 <optional> 914 915 x86_64-linux-gnu 916 ---------------- 917 Symbol added: _ZTISt19bad_optional_access 918 Symbol added: _ZNSt19bad_optional_accessD0Ev 919 Symbol added: _ZNSt19bad_optional_accessD1Ev 920 Symbol added: _ZNSt19bad_optional_accessD2Ev 921 Symbol added: _ZTVSt19bad_optional_access 922 Symbol added: _ZTSSt19bad_optional_access 923 924* r278310 - Implement C++17 <any> 925 926 x86_64-linux-gnu 927 ---------------- 928 Symbol added: _ZNKSt12bad_any_cast4whatEv 929 Symbol added: _ZNSt12bad_any_castD0Ev 930 Symbol added: _ZTISt12bad_any_cast 931 Symbol added: _ZTSSt12bad_any_cast 932 Symbol added: _ZTVSt12bad_any_cast 933 934* r295398 - Remove basic_string::insert and basic_string::replace template methods 935 which should be inline. 936 937 These functions should never have had visible definitions in the dylib but 938 since they were previously not specified with 'inline' they accidentally 939 got emitted. This change is non-ABI breaking because every "linkage unit" 940 must contain its own definition. 941 942 x86_64-linux-gnu 943 ---------------- 944 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_ 945 SYMBOL REMOVED: _ZNSt3__112basic_stringIcNS_11char_traitsIcEENS_9allocatorIcEEE7replaceIPKcEENS_9enable_ifIXsr19__is_input_iteratorIT_EE5valueERS5_E4typeENS_11__wrap_iterIS8_EESF_SA_SA_ 946 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_ 947 SYMBOL REMOVED: _ZNSt3__112basic_stringIwNS_11char_traitsIwEENS_9allocatorIwEEE7replaceIPKwEENS_9enable_ifIXsr19__is_input_iteratorIT_EE5valueERS5_E4typeENS_11__wrap_iterIS8_EESF_SA_SA_ 948