1 // RUN: %clang_cc1 -triple powerpc64-ibm-aix %s -internal-isystem %S -mdefault-visibility-export-mapping=none -emit-llvm -o - | \ 2 // RUN: FileCheck -check-prefixes=CHECK,UNSPECIFIED-DEF,EXPLICIT-DEF,FUND-DEF %s 3 // RUN: %clang_cc1 -triple powerpc64-ibm-aix %s -internal-isystem %S -mdefault-visibility-export-mapping=explicit -emit-llvm -o - | \ 4 // RUN: FileCheck -check-prefixes=CHECK,UNSPECIFIED-DEF,EXPLICIT-EXP,FUND-DEF %s 5 // RUN: %clang_cc1 -triple powerpc64-ibm-aix %s -internal-isystem %S -mdefault-visibility-export-mapping=explicit -DFUNDAMENTAL_IS_EXPLICIT -emit-llvm -o - | \ 6 // RUN: FileCheck -check-prefixes=CHECK,UNSPECIFIED-DEF,EXPLICIT-EXP,FUND-EXP %s 7 // RUN: %clang_cc1 -triple powerpc64-ibm-aix %s -internal-isystem %S -mdefault-visibility-export-mapping=all -emit-llvm -o - | \ 8 // RUN: FileCheck -check-prefixes=CHECK,UNSPECIFIED-EXP,EXPLICIT-EXP,FUND-EXP %s 9 // RUN: %clang_cc1 -triple powerpc64-ibm-aix %s -internal-isystem %S -mdefault-visibility-export-mapping=all -fvisibility=hidden -emit-llvm -o - | \ 10 // RUN: FileCheck -check-prefixes=CHECK,UNSPECIFIED-HID,EXPLICIT-EXP,FUND-HID %s 11 // RUN: %clang_cc1 -triple powerpc64-ibm-aix %s -internal-isystem %S -mdefault-visibility-export-mapping=all -DFUNDAMENTAL_IS_EXPLICIT -fvisibility=hidden -emit-llvm -o - | \ 12 // RUN: FileCheck -check-prefixes=CHECK,UNSPECIFIED-HID,EXPLICIT-EXP,FUND-EXP %s 13 14 #include <typeinfo> 15 16 // C is an incomplete class type, so any direct or indirect pointer types should have 17 // internal linkage, as should the type info for C itself. 18 struct C; 19 // CHECK: @_ZTIP1C = internal constant 20 // CHECK: @_ZTSP1C = internal constant 21 // CHECK: @_ZTI1C = internal constant 22 // CHECK: @_ZTS1C = internal constant 23 // CHECK: @_ZTIPP1C = internal constant 24 // CHECK: @_ZTSPP1C = internal constant 25 26 struct __attribute__((type_visibility("default"))) D; 27 // CHECK: @_ZTIP1D = internal constant 28 // CHECK: @_ZTSP1D = internal constant 29 // CHECK: @_ZTI1D = internal constant 30 // CHECK: @_ZTS1D = internal constant 31 // CHECK: @_ZTIPP1D = internal constant 32 // CHECK: @_ZTSPP1D = internal constant 33 34 void __attribute__((visibility("default"))) tfunc() { 35 (void)typeid(C *); 36 (void)typeid(C **); 37 (void)typeid(D *); 38 (void)typeid(D **); 39 } 40 41 // unspecified visibility RTTI & vtable 42 struct s { 43 virtual void foo(); 44 }; 45 void s::foo() {} 46 // UNSPECIFIED-DEF: @_ZTV1s = unnamed_addr constant 47 // UNSPECIFIED-HID: @_ZTV1s = hidden unnamed_addr constant 48 // UNSPECIFIED-EXP: @_ZTV1s = dllexport unnamed_addr constant 49 // UNSPECIFIED-DEF: @_ZTI1s = constant 50 // UNSPECIFIED-HID: @_ZTI1s = hidden constant 51 // UNSPECIFIED-EXP: @_ZTI1s = dllexport constant 52 // UNSPECIFIED-DEF: @_ZTS1s = constant 53 // UNSPECIFIED-HID: @_ZTS1s = hidden constant 54 // UNSPECIFIED-EXP: @_ZTS1s = dllexport constant 55 56 // explicit default visibility RTTI & vtable 57 struct __attribute__((type_visibility("default"))) t { 58 virtual void foo(); 59 }; 60 void t::foo() {} 61 // EXPLICIT-DEF: @_ZTV1t = unnamed_addr constant 62 // EXPLICIT-HID: @_ZTV1t = hidden unnamed_addr constant 63 // EXPLICIT-EXP: @_ZTV1t = dllexport unnamed_addr constant 64 // EXPLICIT-DEF: @_ZTI1t = constant 65 // EXPLICIT-HID: @_ZTI1t = hidden constant 66 // EXPLICIT-EXP: @_ZTI1t = dllexport constant 67 // EXPLICIT-DEF: @_ZTS1t = constant 68 // EXPLICIT-HID: @_ZTS1t = hidden constant 69 // EXPLICIT-EXP: @_ZTS1t = dllexport constant 70 71 #ifdef FUNDAMENTAL_IS_EXPLICIT 72 #define TYPE_VIS __attribute__((type_visibility("default"))) 73 #else 74 #define TYPE_VIS 75 #endif 76 77 // Invoke the compiler magic to emit RTTI for fundamental types. 78 namespace __cxxabiv1 { 79 class TYPE_VIS __fundamental_type_info { 80 __attribute__((visibility("hidden"))) virtual ~__fundamental_type_info(); 81 }; 82 83 __fundamental_type_info::~__fundamental_type_info() {} 84 85 } // namespace __cxxabiv1 86 87 // __cxxabiv1::__fundamental_type_info 88 // FUND-DEF: @_ZTVN10__cxxabiv123__fundamental_type_infoE = unnamed_addr constant 89 // FUND-DEF: @_ZTIN10__cxxabiv123__fundamental_type_infoE = constant 90 // FUND-DEF: @_ZTSN10__cxxabiv123__fundamental_type_infoE = constant 91 // FUND-HID: @_ZTVN10__cxxabiv123__fundamental_type_infoE = hidden unnamed_addr constant 92 // FUND-HID: @_ZTIN10__cxxabiv123__fundamental_type_infoE = hidden constant 93 // FUND-HID: @_ZTSN10__cxxabiv123__fundamental_type_infoE = hidden constant 94 // FUND-EXP: @_ZTVN10__cxxabiv123__fundamental_type_infoE = dllexport unnamed_addr constant 95 // FUND-EXP: @_ZTIN10__cxxabiv123__fundamental_type_infoE = dllexport constant 96 // FUND-EXP: @_ZTSN10__cxxabiv123__fundamental_type_infoE = dllexport constant 97 98 // void 99 // FUND-DEF: @_ZTIv = constant 100 // FUND-DEF: @_ZTSv = constant 101 // FUND-DEF: @_ZTIPv = constant 102 // FUND-DEF: @_ZTSPv = constant 103 // FUND-DEF: @_ZTIPKv = constant 104 // FUND-DEF: @_ZTSPKv = constant 105 // FUND-HID: @_ZTIv = hidden constant 106 // FUND-HID: @_ZTSv = hidden constant 107 // FUND-HID: @_ZTIPv = hidden constant 108 // FUND-HID: @_ZTSPv = hidden constant 109 // FUND-HID: @_ZTIPKv = hidden constant 110 // FUND-HID: @_ZTSPKv = hidden constant 111 // FUND-EXP: @_ZTIv = dllexport constant 112 // FUND-EXP: @_ZTSv = dllexport constant 113 // FUND-EXP: @_ZTIPv = dllexport constant 114 // FUND-EXP: @_ZTSPv = dllexport constant 115 // FUND-EXP: @_ZTIPKv = dllexport constant 116 // FUND-EXP: @_ZTSPKv = dllexport constant 117 118 // std::nullptr_t 119 // FUND-DEF: @_ZTIDn = constant 120 // FUND-DEF: @_ZTSDn = constant 121 // FUND-DEF: @_ZTIPDn = constant 122 // FUND-DEF: @_ZTSPDn = constant 123 // FUND-DEF: @_ZTIPKDn = constant 124 // FUND-DEF: @_ZTSPKDn = constant 125 // FUND-HID: @_ZTIDn = hidden constant 126 // FUND-HID: @_ZTSDn = hidden constant 127 // FUND-HID: @_ZTIPDn = hidden constant 128 // FUND-HID: @_ZTSPDn = hidden constant 129 // FUND-HID: @_ZTIPKDn = hidden constant 130 // FUND-HID: @_ZTSPKDn = hidden constant 131 // FUND-EXP: @_ZTIDn = dllexport constant 132 // FUND-EXP: @_ZTSDn = dllexport constant 133 // FUND-EXP: @_ZTIPDn = dllexport constant 134 // FUND-EXP: @_ZTSPDn = dllexport constant 135 // FUND-EXP: @_ZTIPKDn = dllexport constant 136 // FUND-EXP: @_ZTSPKDn = dllexport constant 137 138 // bool 139 // FUND-DEF: @_ZTIb = constant 140 // FUND-DEF: @_ZTSb = constant 141 // FUND-DEF: @_ZTIPb = constant 142 // FUND-DEF: @_ZTSPb = constant 143 // FUND-DEF: @_ZTIPKb = constant 144 // FUND-DEF: @_ZTSPKb = constant 145 // FUND-HID: @_ZTIb = hidden constant 146 // FUND-HID: @_ZTSb = hidden constant 147 // FUND-HID: @_ZTIPb = hidden constant 148 // FUND-HID: @_ZTSPb = hidden constant 149 // FUND-HID: @_ZTIPKb = hidden constant 150 // FUND-HID: @_ZTSPKb = hidden constant 151 // FUND-EXP: @_ZTIb = dllexport constant 152 // FUND-EXP: @_ZTSb = dllexport constant 153 // FUND-EXP: @_ZTIPb = dllexport constant 154 // FUND-EXP: @_ZTSPb = dllexport constant 155 // FUND-EXP: @_ZTIPKb = dllexport constant 156 // FUND-EXP: @_ZTSPKb = dllexport constant 157 158 // wchar_t 159 // FUND-DEF: @_ZTIw = constant 160 // FUND-DEF: @_ZTSw = constant 161 // FUND-DEF: @_ZTIPw = constant 162 // FUND-DEF: @_ZTSPw = constant 163 // FUND-DEF: @_ZTIPKw = constant 164 // FUND-DEF: @_ZTSPKw = constant 165 // FUND-HID: @_ZTIw = hidden constant 166 // FUND-HID: @_ZTSw = hidden constant 167 // FUND-HID: @_ZTIPw = hidden constant 168 // FUND-HID: @_ZTSPw = hidden constant 169 // FUND-HID: @_ZTIPKw = hidden constant 170 // FUND-HID: @_ZTSPKw = hidden constant 171 // FUND-EXP: @_ZTIw = dllexport constant 172 // FUND-EXP: @_ZTSw = dllexport constant 173 // FUND-EXP: @_ZTIPw = dllexport constant 174 // FUND-EXP: @_ZTSPw = dllexport constant 175 // FUND-EXP: @_ZTIPKw = dllexport constant 176 // FUND-EXP: @_ZTSPKw = dllexport constant 177 178 // char 179 // FUND-DEF: @_ZTIc = constant 180 // FUND-DEF: @_ZTSc = constant 181 // FUND-DEF: @_ZTIPc = constant 182 // FUND-DEF: @_ZTSPc = constant 183 // FUND-DEF: @_ZTIPKc = constant 184 // FUND-DEF: @_ZTSPKc = constant 185 // FUND-HID: @_ZTIc = hidden constant 186 // FUND-HID: @_ZTSc = hidden constant 187 // FUND-HID: @_ZTIPc = hidden constant 188 // FUND-HID: @_ZTSPc = hidden constant 189 // FUND-HID: @_ZTIPKc = hidden constant 190 // FUND-HID: @_ZTSPKc = hidden constant 191 // FUND-EXP: @_ZTIc = dllexport constant 192 // FUND-EXP: @_ZTSc = dllexport constant 193 // FUND-EXP: @_ZTIPc = dllexport constant 194 // FUND-EXP: @_ZTSPc = dllexport constant 195 // FUND-EXP: @_ZTIPKc = dllexport constant 196 // FUND-EXP: @_ZTSPKc = dllexport constant 197 198 // unsigned char 199 // FUND-DEF: @_ZTIh = constant 200 // FUND-DEF: @_ZTSh = constant 201 // FUND-DEF: @_ZTIPh = constant 202 // FUND-DEF: @_ZTSPh = constant 203 // FUND-DEF: @_ZTIPKh = constant 204 // FUND-DEF: @_ZTSPKh = constant 205 // FUND-HID: @_ZTIh = hidden constant 206 // FUND-HID: @_ZTSh = hidden constant 207 // FUND-HID: @_ZTIPh = hidden constant 208 // FUND-HID: @_ZTSPh = hidden constant 209 // FUND-HID: @_ZTIPKh = hidden constant 210 // FUND-HID: @_ZTSPKh = hidden constant 211 // FUND-EXP: @_ZTIh = dllexport constant 212 // FUND-EXP: @_ZTSh = dllexport constant 213 // FUND-EXP: @_ZTIPh = dllexport constant 214 // FUND-EXP: @_ZTSPh = dllexport constant 215 // FUND-EXP: @_ZTIPKh = dllexport constant 216 // FUND-EXP: @_ZTSPKh = dllexport constant 217 218 // signed char 219 // FUND-DEF: @_ZTIa = constant 220 // FUND-DEF: @_ZTSa = constant 221 // FUND-DEF: @_ZTIPa = constant 222 // FUND-DEF: @_ZTSPa = constant 223 // FUND-DEF: @_ZTIPKa = constant 224 // FUND-DEF: @_ZTSPKa = constant 225 // FUND-HID: @_ZTIa = hidden constant 226 // FUND-HID: @_ZTSa = hidden constant 227 // FUND-HID: @_ZTIPa = hidden constant 228 // FUND-HID: @_ZTSPa = hidden constant 229 // FUND-HID: @_ZTIPKa = hidden constant 230 // FUND-HID: @_ZTSPKa = hidden constant 231 // FUND-EXP: @_ZTIa = dllexport constant 232 // FUND-EXP: @_ZTSa = dllexport constant 233 // FUND-EXP: @_ZTIPa = dllexport constant 234 // FUND-EXP: @_ZTSPa = dllexport constant 235 // FUND-EXP: @_ZTIPKa = dllexport constant 236 // FUND-EXP: @_ZTSPKa = dllexport constant 237 238 // short 239 // FUND-DEF: @_ZTIs = constant 240 // FUND-DEF: @_ZTSs = constant 241 // FUND-DEF: @_ZTIPs = constant 242 // FUND-DEF: @_ZTSPs = constant 243 // FUND-DEF: @_ZTIPKs = constant 244 // FUND-DEF: @_ZTSPKs = constant 245 // FUND-HID: @_ZTIs = hidden constant 246 // FUND-HID: @_ZTSs = hidden constant 247 // FUND-HID: @_ZTIPs = hidden constant 248 // FUND-HID: @_ZTSPs = hidden constant 249 // FUND-HID: @_ZTIPKs = hidden constant 250 // FUND-HID: @_ZTSPKs = hidden constant 251 // FUND-EXP: @_ZTIs = dllexport constant 252 // FUND-EXP: @_ZTSs = dllexport constant 253 // FUND-EXP: @_ZTIPs = dllexport constant 254 // FUND-EXP: @_ZTSPs = dllexport constant 255 // FUND-EXP: @_ZTIPKs = dllexport constant 256 // FUND-EXP: @_ZTSPKs = dllexport constant 257 258 // unsigned short 259 // FUND-DEF: @_ZTIt = constant 260 // FUND-DEF: @_ZTSt = constant 261 // FUND-DEF: @_ZTIPt = constant 262 // FUND-DEF: @_ZTSPt = constant 263 // FUND-DEF: @_ZTIPKt = constant 264 // FUND-DEF: @_ZTSPKt = constant 265 // FUND-HID: @_ZTIt = hidden constant 266 // FUND-HID: @_ZTSt = hidden constant 267 // FUND-HID: @_ZTIPt = hidden constant 268 // FUND-HID: @_ZTSPt = hidden constant 269 // FUND-HID: @_ZTIPKt = hidden constant 270 // FUND-HID: @_ZTSPKt = hidden constant 271 // FUND-EXP: @_ZTIt = dllexport constant 272 // FUND-EXP: @_ZTSt = dllexport constant 273 // FUND-EXP: @_ZTIPt = dllexport constant 274 // FUND-EXP: @_ZTSPt = dllexport constant 275 // FUND-EXP: @_ZTIPKt = dllexport constant 276 // FUND-EXP: @_ZTSPKt = dllexport constant 277 278 // int 279 // FUND-DEF: @_ZTIi = constant 280 // FUND-DEF: @_ZTSi = constant 281 // FUND-DEF: @_ZTIPi = constant 282 // FUND-DEF: @_ZTSPi = constant 283 // FUND-DEF: @_ZTIPKi = constant 284 // FUND-DEF: @_ZTSPKi = constant 285 // FUND-HID: @_ZTIi = hidden constant 286 // FUND-HID: @_ZTSi = hidden constant 287 // FUND-HID: @_ZTIPi = hidden constant 288 // FUND-HID: @_ZTSPi = hidden constant 289 // FUND-HID: @_ZTIPKi = hidden constant 290 // FUND-HID: @_ZTSPKi = hidden constant 291 // FUND-EXP: @_ZTIi = dllexport constant 292 // FUND-EXP: @_ZTSi = dllexport constant 293 // FUND-EXP: @_ZTIPi = dllexport constant 294 // FUND-EXP: @_ZTSPi = dllexport constant 295 // FUND-EXP: @_ZTIPKi = dllexport constant 296 // FUND-EXP: @_ZTSPKi = dllexport constant 297 298 // unsigned int 299 // FUND-DEF: @_ZTIj = constant 300 // FUND-DEF: @_ZTSj = constant 301 // FUND-DEF: @_ZTIPj = constant 302 // FUND-DEF: @_ZTSPj = constant 303 // FUND-DEF: @_ZTIPKj = constant 304 // FUND-DEF: @_ZTSPKj = constant 305 // FUND-HID: @_ZTIj = hidden constant 306 // FUND-HID: @_ZTSj = hidden constant 307 // FUND-HID: @_ZTIPj = hidden constant 308 // FUND-HID: @_ZTSPj = hidden constant 309 // FUND-HID: @_ZTIPKj = hidden constant 310 // FUND-HID: @_ZTSPKj = hidden constant 311 // FUND-EXP: @_ZTIj = dllexport constant 312 // FUND-EXP: @_ZTSj = dllexport constant 313 // FUND-EXP: @_ZTIPj = dllexport constant 314 // FUND-EXP: @_ZTSPj = dllexport constant 315 // FUND-EXP: @_ZTIPKj = dllexport constant 316 // FUND-EXP: @_ZTSPKj = dllexport constant 317 318 // long 319 // FUND-DEF: @_ZTIl = constant 320 // FUND-DEF: @_ZTSl = constant 321 // FUND-DEF: @_ZTIPl = constant 322 // FUND-DEF: @_ZTSPl = constant 323 // FUND-DEF: @_ZTIPKl = constant 324 // FUND-DEF: @_ZTSPKl = constant 325 // FUND-HID: @_ZTIl = hidden constant 326 // FUND-HID: @_ZTSl = hidden constant 327 // FUND-HID: @_ZTIPl = hidden constant 328 // FUND-HID: @_ZTSPl = hidden constant 329 // FUND-HID: @_ZTIPKl = hidden constant 330 // FUND-HID: @_ZTSPKl = hidden constant 331 // FUND-EXP: @_ZTIl = dllexport constant 332 // FUND-EXP: @_ZTSl = dllexport constant 333 // FUND-EXP: @_ZTIPl = dllexport constant 334 // FUND-EXP: @_ZTSPl = dllexport constant 335 // FUND-EXP: @_ZTIPKl = dllexport constant 336 // FUND-EXP: @_ZTSPKl = dllexport constant 337 338 // unsigned long 339 // FUND-DEF: @_ZTIm = constant 340 // FUND-DEF: @_ZTSm = constant 341 // FUND-DEF: @_ZTIPm = constant 342 // FUND-DEF: @_ZTSPm = constant 343 // FUND-DEF: @_ZTIPKm = constant 344 // FUND-DEF: @_ZTSPKm = constant 345 // FUND-HID: @_ZTIm = hidden constant 346 // FUND-HID: @_ZTSm = hidden constant 347 // FUND-HID: @_ZTIPm = hidden constant 348 // FUND-HID: @_ZTSPm = hidden constant 349 // FUND-HID: @_ZTIPKm = hidden constant 350 // FUND-HID: @_ZTSPKm = hidden constant 351 // FUND-EXP: @_ZTIm = dllexport constant 352 // FUND-EXP: @_ZTSm = dllexport constant 353 // FUND-EXP: @_ZTIPm = dllexport constant 354 // FUND-EXP: @_ZTSPm = dllexport constant 355 // FUND-EXP: @_ZTIPKm = dllexport constant 356 // FUND-EXP: @_ZTSPKm = dllexport constant 357 358 // long long 359 // FUND-DEF: @_ZTIx = constant 360 // FUND-DEF: @_ZTSx = constant 361 // FUND-DEF: @_ZTIPx = constant 362 // FUND-DEF: @_ZTSPx = constant 363 // FUND-DEF: @_ZTIPKx = constant 364 // FUND-DEF: @_ZTSPKx = constant 365 // FUND-HID: @_ZTIx = hidden constant 366 // FUND-HID: @_ZTSx = hidden constant 367 // FUND-HID: @_ZTIPx = hidden constant 368 // FUND-HID: @_ZTSPx = hidden constant 369 // FUND-HID: @_ZTIPKx = hidden constant 370 // FUND-HID: @_ZTSPKx = hidden constant 371 // FUND-EXP: @_ZTIx = dllexport constant 372 // FUND-EXP: @_ZTSx = dllexport constant 373 // FUND-EXP: @_ZTIPx = dllexport constant 374 // FUND-EXP: @_ZTSPx = dllexport constant 375 // FUND-EXP: @_ZTIPKx = dllexport constant 376 // FUND-EXP: @_ZTSPKx = dllexport constant 377 378 // unsigned long long 379 // FUND-DEF: @_ZTIy = constant 380 // FUND-DEF: @_ZTSy = constant 381 // FUND-DEF: @_ZTIPy = constant 382 // FUND-DEF: @_ZTSPy = constant 383 // FUND-DEF: @_ZTIPKy = constant 384 // FUND-DEF: @_ZTSPKy = constant 385 // FUND-HID: @_ZTIy = hidden constant 386 // FUND-HID: @_ZTSy = hidden constant 387 // FUND-HID: @_ZTIPy = hidden constant 388 // FUND-HID: @_ZTSPy = hidden constant 389 // FUND-HID: @_ZTIPKy = hidden constant 390 // FUND-HID: @_ZTSPKy = hidden constant 391 // FUND-EXP: @_ZTIy = dllexport constant 392 // FUND-EXP: @_ZTSy = dllexport constant 393 // FUND-EXP: @_ZTIPy = dllexport constant 394 // FUND-EXP: @_ZTSPy = dllexport constant 395 // FUND-EXP: @_ZTIPKy = dllexport constant 396 // FUND-EXP: @_ZTSPKy = dllexport constant 397 398 // __int128 399 // FUND-DEF: @_ZTIn = constant 400 // FUND-DEF: @_ZTSn = constant 401 // FUND-DEF: @_ZTIPn = constant 402 // FUND-DEF: @_ZTSPn = constant 403 // FUND-DEF: @_ZTIPKn = constant 404 // FUND-DEF: @_ZTSPKn = constant 405 // FUND-HID: @_ZTIn = hidden constant 406 // FUND-HID: @_ZTSn = hidden constant 407 // FUND-HID: @_ZTIPn = hidden constant 408 // FUND-HID: @_ZTSPn = hidden constant 409 // FUND-HID: @_ZTIPKn = hidden constant 410 // FUND-HID: @_ZTSPKn = hidden constant 411 // FUND-EXP: @_ZTIn = dllexport constant 412 // FUND-EXP: @_ZTSn = dllexport constant 413 // FUND-EXP: @_ZTIPn = dllexport constant 414 // FUND-EXP: @_ZTSPn = dllexport constant 415 // FUND-EXP: @_ZTIPKn = dllexport constant 416 // FUND-EXP: @_ZTSPKn = dllexport constant 417 418 // unsigned __int128 419 // FUND-DEF: @_ZTIo = constant 420 // FUND-DEF: @_ZTSo = constant 421 // FUND-DEF: @_ZTIPo = constant 422 // FUND-DEF: @_ZTSPo = constant 423 // FUND-DEF: @_ZTIPKo = constant 424 // FUND-DEF: @_ZTSPKo = constant 425 // FUND-HID: @_ZTIo = hidden constant 426 // FUND-HID: @_ZTSo = hidden constant 427 // FUND-HID: @_ZTIPo = hidden constant 428 // FUND-HID: @_ZTSPo = hidden constant 429 // FUND-HID: @_ZTIPKo = hidden constant 430 // FUND-HID: @_ZTSPKo = hidden constant 431 // FUND-EXP: @_ZTIo = dllexport constant 432 // FUND-EXP: @_ZTSo = dllexport constant 433 // FUND-EXP: @_ZTIPo = dllexport constant 434 // FUND-EXP: @_ZTSPo = dllexport constant 435 // FUND-EXP: @_ZTIPKo = dllexport constant 436 // FUND-EXP: @_ZTSPKo = dllexport constant 437 438 // half 439 // FUND-DEF: @_ZTIDh = constant 440 // FUND-DEF: @_ZTSDh = constant 441 // FUND-DEF: @_ZTIPDh = constant 442 // FUND-DEF: @_ZTSPDh = constant 443 // FUND-DEF: @_ZTIPKDh = constant 444 // FUND-DEF: @_ZTSPKDh = constant 445 // FUND-HID: @_ZTIDh = hidden constant 446 // FUND-HID: @_ZTSDh = hidden constant 447 // FUND-HID: @_ZTIPDh = hidden constant 448 // FUND-HID: @_ZTSPDh = hidden constant 449 // FUND-HID: @_ZTIPKDh = hidden constant 450 // FUND-HID: @_ZTSPKDh = hidden constant 451 // FUND-EXP: @_ZTIDh = dllexport constant 452 // FUND-EXP: @_ZTSDh = dllexport constant 453 // FUND-EXP: @_ZTIPDh = dllexport constant 454 // FUND-EXP: @_ZTSPDh = dllexport constant 455 // FUND-EXP: @_ZTIPKDh = dllexport constant 456 // FUND-EXP: @_ZTSPKDh = dllexport constant 457 458 // float 459 // FUND-DEF: @_ZTIf = constant 460 // FUND-DEF: @_ZTSf = constant 461 // FUND-DEF: @_ZTIPf = constant 462 // FUND-DEF: @_ZTSPf = constant 463 // FUND-DEF: @_ZTIPKf = constant 464 // FUND-DEF: @_ZTSPKf = constant 465 // FUND-HID: @_ZTIf = hidden constant 466 // FUND-HID: @_ZTSf = hidden constant 467 // FUND-HID: @_ZTIPf = hidden constant 468 // FUND-HID: @_ZTSPf = hidden constant 469 // FUND-HID: @_ZTIPKf = hidden constant 470 // FUND-HID: @_ZTSPKf = hidden constant 471 // FUND-EXP: @_ZTIf = dllexport constant 472 // FUND-EXP: @_ZTSf = dllexport constant 473 // FUND-EXP: @_ZTIPf = dllexport constant 474 // FUND-EXP: @_ZTSPf = dllexport constant 475 // FUND-EXP: @_ZTIPKf = dllexport constant 476 // FUND-EXP: @_ZTSPKf = dllexport constant 477 478 // double 479 // FUND-DEF: @_ZTId = constant 480 // FUND-DEF: @_ZTSd = constant 481 // FUND-DEF: @_ZTIPd = constant 482 // FUND-DEF: @_ZTSPd = constant 483 // FUND-DEF: @_ZTIPKd = constant 484 // FUND-DEF: @_ZTSPKd = constant 485 // FUND-HID: @_ZTId = hidden constant 486 // FUND-HID: @_ZTSd = hidden constant 487 // FUND-HID: @_ZTIPd = hidden constant 488 // FUND-HID: @_ZTSPd = hidden constant 489 // FUND-HID: @_ZTIPKd = hidden constant 490 // FUND-HID: @_ZTSPKd = hidden constant 491 // FUND-EXP: @_ZTId = dllexport constant 492 // FUND-EXP: @_ZTSd = dllexport constant 493 // FUND-EXP: @_ZTIPd = dllexport constant 494 // FUND-EXP: @_ZTSPd = dllexport constant 495 // FUND-EXP: @_ZTIPKd = dllexport constant 496 // FUND-EXP: @_ZTSPKd = dllexport constant 497 498 // long double 499 // FUND-DEF: @_ZTIe = constant 500 // FUND-DEF: @_ZTSe = constant 501 // FUND-DEF: @_ZTIPe = constant 502 // FUND-DEF: @_ZTSPe = constant 503 // FUND-DEF: @_ZTIPKe = constant 504 // FUND-DEF: @_ZTSPKe = constant 505 // FUND-HID: @_ZTIe = hidden constant 506 // FUND-HID: @_ZTSe = hidden constant 507 // FUND-HID: @_ZTIPe = hidden constant 508 // FUND-HID: @_ZTSPe = hidden constant 509 // FUND-HID: @_ZTIPKe = hidden constant 510 // FUND-HID: @_ZTSPKe = hidden constant 511 // FUND-EXP: @_ZTIe = dllexport constant 512 // FUND-EXP: @_ZTSe = dllexport constant 513 // FUND-EXP: @_ZTIPe = dllexport constant 514 // FUND-EXP: @_ZTSPe = dllexport constant 515 // FUND-EXP: @_ZTIPKe = dllexport constant 516 // FUND-EXP: @_ZTSPKe = dllexport constant 517 518 // __ieee128 519 // FUND-DEF: @_ZTIu9__ieee128 = constant 520 // FUND-DEF: @_ZTSu9__ieee128 = constant 521 // FUND-DEF: @_ZTIPu9__ieee128 = constant 522 // FUND-DEF: @_ZTSPu9__ieee128 = constant 523 // FUND-DEF: @_ZTIPKu9__ieee128 = constant 524 // FUND-DEF: @_ZTSPKu9__ieee128 = constant 525 // FUND-HID: @_ZTIu9__ieee128 = hidden constant 526 // FUND-HID: @_ZTSu9__ieee128 = hidden constant 527 // FUND-HID: @_ZTIPu9__ieee128 = hidden constant 528 // FUND-HID: @_ZTSPu9__ieee128 = hidden constant 529 // FUND-HID: @_ZTIPKu9__ieee128 = hidden constant 530 // FUND-HID: @_ZTSPKu9__ieee128 = hidden constant 531 // FUND-EXP: @_ZTIu9__ieee128 = dllexport constant 532 // FUND-EXP: @_ZTSu9__ieee128 = dllexport constant 533 // FUND-EXP: @_ZTIPu9__ieee128 = dllexport constant 534 // FUND-EXP: @_ZTSPu9__ieee128 = dllexport constant 535 // FUND-EXP: @_ZTIPKu9__ieee128 = dllexport constant 536 // FUND-EXP: @_ZTSPKu9__ieee128 = dllexport constant 537 538 // char8_t 539 // FUND-DEF: @_ZTIDu = constant 540 // FUND-DEF: @_ZTSDu = constant 541 // FUND-DEF: @_ZTIPDu = constant 542 // FUND-DEF: @_ZTSPDu = constant 543 // FUND-DEF: @_ZTIPKDu = constant 544 // FUND-DEF: @_ZTSPKDu = constant 545 // FUND-HID: @_ZTIDu = hidden constant 546 // FUND-HID: @_ZTSDu = hidden constant 547 // FUND-HID: @_ZTIPDu = hidden constant 548 // FUND-HID: @_ZTSPDu = hidden constant 549 // FUND-HID: @_ZTIPKDu = hidden constant 550 // FUND-HID: @_ZTSPKDu = hidden constant 551 // FUND-EXP: @_ZTIDu = dllexport constant 552 // FUND-EXP: @_ZTSDu = dllexport constant 553 // FUND-EXP: @_ZTIPDu = dllexport constant 554 // FUND-EXP: @_ZTSPDu = dllexport constant 555 // FUND-EXP: @_ZTIPKDu = dllexport constant 556 // FUND-EXP: @_ZTSPKDu = dllexport constant 557 558 // char16_t 559 // FUND-DEF: @_ZTIDs = constant 560 // FUND-DEF: @_ZTSDs = constant 561 // FUND-DEF: @_ZTIPDs = constant 562 // FUND-DEF: @_ZTSPDs = constant 563 // FUND-DEF: @_ZTIPKDs = constant 564 // FUND-DEF: @_ZTSPKDs = constant 565 // FUND-HID: @_ZTIDs = hidden constant 566 // FUND-HID: @_ZTSDs = hidden constant 567 // FUND-HID: @_ZTIPDs = hidden constant 568 // FUND-HID: @_ZTSPDs = hidden constant 569 // FUND-HID: @_ZTIPKDs = hidden constant 570 // FUND-HID: @_ZTSPKDs = hidden constant 571 // FUND-EXP: @_ZTIDs = dllexport constant 572 // FUND-EXP: @_ZTSDs = dllexport constant 573 // FUND-EXP: @_ZTIPDs = dllexport constant 574 // FUND-EXP: @_ZTSPDs = dllexport constant 575 // FUND-EXP: @_ZTIPKDs = dllexport constant 576 // FUND-EXP: @_ZTSPKDs = dllexport constant 577 578 // char32_t 579 // FUND-DEF: @_ZTIDi = constant 580 // FUND-DEF: @_ZTSDi = constant 581 // FUND-DEF: @_ZTIPDi = constant 582 // FUND-DEF: @_ZTSPDi = constant 583 // FUND-DEF: @_ZTIPKDi = constant 584 // FUND-DEF: @_ZTSPKDi = constant 585 // FUND-HID: @_ZTIDi = hidden constant 586 // FUND-HID: @_ZTSDi = hidden constant 587 // FUND-HID: @_ZTIPDi = hidden constant 588 // FUND-HID: @_ZTSPDi = hidden constant 589 // FUND-HID: @_ZTIPKDi = hidden constant 590 // FUND-HID: @_ZTSPKDi = hidden constant 591 // FUND-EXP: @_ZTIDi = dllexport constant 592 // FUND-EXP: @_ZTSDi = dllexport constant 593 // FUND-EXP: @_ZTIPDi = dllexport constant 594 // FUND-EXP: @_ZTSPDi = dllexport constant 595 // FUND-EXP: @_ZTIPKDi = dllexport constant 596 // FUND-EXP: @_ZTSPKDi = dllexport constant 597