1 2 Linux Standard Base C++ Specification for Itanium(TM) 3.0Preview1 3 4 Copyright © 2004 Free Standards Group 5 6 Permission is granted to copy, distribute and/or modify this 7 document under the terms of the GNU Free Documentation 8 License, Version 1.1; with no Invariant Sections, with no 9 Front-Cover Texts, and with no Back-Cover Texts. A copy of the 10 license is included in the section entitled "GNU Free 11 Documentation License". 12 13 Portions of the text are copyrighted by the following parties: 14 15 * The Regents of the University of California 16 * Free Software Foundation 17 * Ian F. Darwin 18 * Paul Vixie 19 * BSDI (now Wind River) 20 * Andrew G Morgan 21 * Jean-loup Gailly and Mark Adler 22 * Massachusetts Institute of Technology 23 24 These excerpts are being used in accordance with their 25 respective licenses. 26 27 Linux is a trademark of Linus Torvalds. 28 29 UNIX a registered trademark of the Open Group in the United 30 States and other countries. 31 32 LSB is a trademark of the Free Standards Group in the USA and 33 other countries. 34 35 AMD is a trademark of Advanced Micro Devices, Inc. 36 37 Intel and Itanium are registered trademarks and Intel386 is a 38 trademarks of Intel Corporation. 39 40 OpenGL is a registered trademark of Silicon Graphics, Inc. 41 _________________________________________________________ 42 43 Table of Contents 44 Foreword 45 Introduction 46 I. Introductory Elements 47 48 1. Scope 49 50 1.1. General 51 1.2. Module Specific Scope 52 53 2. Normative References 54 3. Requirements 55 56 3.1. Relevant Libraries 57 3.2. LSB Implementation Conformance 58 3.3. LSB Application Conformance 59 60 4. Definitions 61 5. Terminology 62 6. Documentation Conventions 63 64 II. Base Libraries 65 66 7. Libraries 67 68 7.1. Interfaces for libstdcxx 69 70 A. GNU Free Documentation License 71 72 A.1. PREAMBLE 73 A.2. APPLICABILITY AND DEFINITIONS 74 A.3. VERBATIM COPYING 75 A.4. COPYING IN QUANTITY 76 A.5. MODIFICATIONS 77 A.6. COMBINING DOCUMENTS 78 A.7. COLLECTIONS OF DOCUMENTS 79 A.8. AGGREGATION WITH INDEPENDENT WORKS 80 A.9. TRANSLATION 81 A.10. TERMINATION 82 A.11. FUTURE REVISIONS OF THIS LICENSE 83 A.12. How to use this License for your documents 84 85 List of Tables 86 2-1. Normative References 87 3-1. Standard Library Names 88 7-1. libstdcxx Definition 89 7-2. libstdcxx - C++ Runtime Support Function Interfaces 90 7-3. libstdcxx - Class basic_string Function Interfaces 91 7-4. libstdcxx - Class gslice Function Interfaces 92 7-5. libstdcxx - Class __basic_file Function Interfaces 93 7-6. libstdcxx - Class valarray Function 94 Interfaces 95 96 7-7. libstdcxx - Class basic_string, 97 allocator > Function Interfaces 98 99 7-8. Primary vtable for __cxxabiv1::__enum_type_info 100 7-9. typeinfo for __cxxabiv1::__enum_type_info 101 7-10. Primary vtable for __cxxabiv1::__array_type_info 102 7-11. typeinfo for __cxxabiv1::__array_type_info 103 7-12. Primary vtable for __cxxabiv1::__class_type_info 104 7-13. typeinfo for __cxxabiv1::__class_type_info 105 7-14. libstdcxx - Class __cxxabiv1::__class_type_info Function 106 Interfaces 107 108 7-15. Primary vtable for __cxxabiv1::__pbase_type_info 109 7-16. typeinfo for __cxxabiv1::__pbase_type_info 110 7-17. Primary vtable for __cxxabiv1::__pointer_type_info 111 7-18. typeinfo for __cxxabiv1::__pointer_type_info 112 7-19. Primary vtable for __cxxabiv1::__function_type_info 113 7-20. typeinfo for __cxxabiv1::__function_type_info 114 7-21. Primary vtable for __cxxabiv1::__si_class_type_info 115 7-22. typeinfo for __cxxabiv1::__si_class_type_info 116 7-23. libstdcxx - Class __cxxabiv1::__si_class_type_info 117 Function Interfaces 118 119 7-24. Primary vtable for __cxxabiv1::__vmi_class_type_info 120 7-25. typeinfo for __cxxabiv1::__vmi_class_type_info 121 7-26. libstdcxx - Class __cxxabiv1::__vmi_class_type_info 122 Function Interfaces 123 124 7-27. Primary vtable for __cxxabiv1::__fundamental_type_info 125 7-28. typeinfo for __cxxabiv1::__fundamental_type_info 126 7-29. Primary vtable for 127 __cxxabiv1::__pointer_to_member_type_info 128 129 7-30. typeinfo for __cxxabiv1::__pointer_to_member_type_info 130 7-31. Primary vtable for __gnu_cxx::stdio_sync_filebuf > 132 133 7-32. Primary vtable for 134 __gnu_cxx::stdio_sync_filebuf > 136 137 7-33. Primary vtable for locale::facet 138 7-34. typeinfo for locale::facet 139 7-35. Primary vtable for ios_base::failure 140 7-36. typeinfo for ios_base::failure 141 7-37. Primary vtable for basic_iostream > 143 144 7-38. Secondary vtable for basic_iostream > 146 147 7-39. Secondary vtable for basic_iostream > 149 150 7-40. VTT for basic_iostream > 151 7-41. libstdcxx - Class _ZSdE Function Interfaces 152 7-42. Primary vtable for basic_istream 153 > 154 155 7-43. Secondary vtable for basic_istream > 157 158 7-44. VTT for basic_istream > 159 7-45. libstdcxx - Class _ZSiE Function Interfaces 160 7-46. Primary vtable for basic_ostream 161 > 162 163 7-47. Secondary vtable for basic_ostream > 165 166 7-48. VTT for basic_ostream > 167 7-49. libstdcxx - Class _ZSoE Function Interfaces 168 7-50. 169 7-51. Primary vtable for bad_typeid 170 7-52. typeinfo for bad_typeid 171 7-53. typeinfo for ctype_base 172 7-54. Primary vtable for istrstream 173 7-55. Secondary vtable for istrstream 174 7-56. VTT for istrstream 175 7-57. libstdcxx - Class istrstream Function Interfaces 176 7-58. typeinfo for money_base 177 7-59. Primary vtable for moneypunct 178 7-60. libstdcxx - Class moneypunct Function 179 Interfaces 180 181 7-61. Primary vtable for moneypunct 182 7-62. libstdcxx - Class moneypunct Function 183 Interfaces 184 185 7-63. Primary vtable for moneypunct 186 7-64. libstdcxx - Class moneypunct Function 187 Interfaces 188 189 7-65. Primary vtable for moneypunct 190 7-66. libstdcxx - Class moneypunct Function 191 Interfaces 192 193 7-67. Primary vtable for ostrstream 194 7-68. Secondary vtable for ostrstream 195 7-69. VTT for ostrstream 196 7-70. libstdcxx - Class ostrstream Function Interfaces 197 7-71. Primary vtable for __timepunct 198 7-72. typeinfo for __timepunct 199 7-73. libstdcxx - Class __timepunct Function Interfaces 200 7-74. Primary vtable for __timepunct 201 7-75. typeinfo for __timepunct 202 7-76. libstdcxx - Class __timepunct Function 203 Interfaces 204 205 7-77. Primary vtable for logic_error 206 7-78. typeinfo for logic_error 207 7-79. Primary vtable for range_error 208 7-80. typeinfo for range_error 209 7-81. typeinfo for codecvt_base 210 7-82. Primary vtable for ctype_byname 211 7-83. typeinfo for ctype_byname 212 7-84. libstdcxx - Class ctype_byname Function Interfaces 213 7-85. libstdcxx - Class ctype_byname Function 214 Interfaces 215 216 7-86. Primary vtable for domain_error 217 7-87. typeinfo for domain_error 218 7-88. Primary vtable for length_error 219 7-89. typeinfo for length_error 220 7-90. Primary vtable for out_of_range 221 7-91. typeinfo for out_of_range 222 7-92. Primary vtable for strstreambuf 223 7-93. typeinfo for strstreambuf 224 7-94. libstdcxx - Class strstreambuf Function Interfaces 225 7-95. Primary vtable for bad_exception 226 7-96. typeinfo for bad_exception 227 7-97. Primary vtable for basic_filebuf 228 > 229 230 7-98. typeinfo for basic_filebuf > 231 7-99. libstdcxx - Class basic_filebuf 232 > Function Interfaces 233 234 7-100. Primary vtable for basic_filebuf > 236 237 7-101. typeinfo for basic_filebuf > 239 240 7-102. libstdcxx - Class basic_filebuf > Function Interfaces 242 243 7-103. Primary vtable for basic_fstream > 245 246 7-104. Secondary vtable for basic_fstream > 248 249 7-105. Secondary vtable for basic_fstream > 251 252 7-106. VTT for basic_fstream > 253 7-107. libstdcxx - Class basic_fstream 254 > Function Interfaces 255 256 7-108. Primary vtable for basic_fstream > 258 259 7-109. Secondary vtable for basic_fstream > 261 262 7-110. Secondary vtable for basic_fstream > 264 265 7-111. VTT for basic_fstream > 266 7-112. libstdcxx - Class basic_fstream > Function Interfaces 268 269 7-113. Primary vtable for basic_istream > 271 272 7-114. Secondary vtable for basic_istream > 274 275 7-115. VTT for basic_istream > 276 7-116. libstdcxx - Class basic_istream > Function Interfaces 278 279 7-117. Primary vtable for basic_ostream > 281 282 7-118. Secondary vtable for basic_ostream > 284 285 7-119. VTT for basic_ostream > 286 7-120. libstdcxx - Class basic_ostream > Function Interfaces 288 289 7-121. typeinfo for messages_base 290 7-122. Primary vtable for runtime_error 291 7-123. typeinfo for runtime_error 292 7-124. Primary vtable for basic_ifstream > 294 295 7-125. Secondary vtable for basic_ifstream > 297 298 7-126. VTT for basic_ifstream > 299 7-127. libstdcxx - Class basic_ifstream > Function Interfaces 301 302 7-128. Primary vtable for basic_ifstream > 304 305 7-129. Secondary vtable for basic_ifstream > 307 308 7-130. VTT for basic_ifstream > 309 7-131. libstdcxx - Class basic_ifstream > Function Interfaces 311 312 7-132. Primary vtable for basic_iostream > 314 315 7-133. Secondary vtable for basic_iostream > 317 318 7-134. Secondary vtable for basic_iostream > 320 321 7-135. VTT for basic_iostream > 322 7-136. libstdcxx - Class basic_iostream > Function Interfaces 324 325 7-137. Primary vtable for basic_ofstream > 327 328 7-138. Secondary vtable for basic_ofstream > 330 331 7-139. VTT for basic_ofstream > 332 7-140. libstdcxx - Class basic_ofstream > Function Interfaces 334 335 7-141. Primary vtable for basic_ofstream > 337 338 7-142. Secondary vtable for basic_ofstream > 340 341 7-143. VTT for basic_ofstream > 342 7-144. libstdcxx - Class basic_ofstream > Function Interfaces 344 345 7-145. Primary vtable for codecvt_byname 347 348 7-146. typeinfo for codecvt_byname 349 7-147. libstdcxx - Class codecvt_byname Function Interfaces 351 352 7-148. Primary vtable for codecvt_byname 354 355 7-149. typeinfo for codecvt_byname 356 7-150. Primary vtable for collate_byname 357 7-151. typeinfo for collate_byname 358 7-152. libstdcxx - Class codecvt_byname Function Interfaces 360 361 7-153. Primary vtable for collate_byname 362 7-154. typeinfo for collate_byname 363 7-155. libstdcxx - Class collate_byname Function 364 Interfaces 365 366 7-156. Primary vtable for overflow_error 367 7-157. typeinfo for overflow_error 368 7-158. Primary vtable for basic_streambuf > 370 371 7-159. typeinfo for basic_streambuf > 372 7-160. libstdcxx - Class basic_streambuf > Function Interfaces 374 375 7-161. Primary vtable for basic_streambuf > 377 378 7-162. typeinfo for basic_streambuf > 380 381 7-163. libstdcxx - Class basic_streambuf > Function Interfaces 383 384 7-164. Primary vtable for basic_stringbuf, allocator > 386 387 7-165. typeinfo for basic_stringbuf, 388 allocator > 389 390 7-166. libstdcxx - Class basic_stringbuf, allocator > Function 392 Interfaces 393 394 7-167. Primary vtable for basic_stringbuf, allocator > 396 397 7-168. typeinfo for basic_stringbuf, allocator > 399 400 7-169. libstdcxx - Class basic_stringbuf, allocator > Function 402 Interfaces 403 404 7-170. Primary vtable for messages_byname 405 7-171. typeinfo for messages_byname 406 7-172. libstdcxx - Class messages_byname Function 407 Interfaces 408 409 7-173. Primary vtable for messages_byname 410 7-174. typeinfo for messages_byname 411 7-175. libstdcxx - Class messages_byname Function 412 Interfaces 413 414 7-176. Primary vtable for numpunct_byname 415 7-177. typeinfo for numpunct_byname 416 7-178. libstdcxx - Class numpunct_byname Function 417 Interfaces 418 419 7-179. Primary vtable for numpunct_byname 420 7-180. typeinfo for numpunct_byname 421 7-181. libstdcxx - Class numpunct_byname Function 422 Interfaces 423 424 7-182. Primary vtable for time_get_byname > > 426 427 7-183. typeinfo for time_get_byname > > 429 430 7-184. libstdcxx - Class time_get_byname > > 432 Function Interfaces 433 434 7-185. Primary vtable for time_get_byname > > 436 437 7-186. typeinfo for time_get_byname > > 439 440 7-187. libstdcxx - Class time_get_byname > > 442 Function Interfaces 443 444 7-188. Primary vtable for time_put_byname > > 446 447 7-189. typeinfo for time_put_byname > > 449 450 7-190. libstdcxx - Class time_put_byname > > 452 Function Interfaces 453 454 7-191. Primary vtable for time_put_byname > > 456 457 7-192. typeinfo for time_put_byname > > 459 460 7-193. libstdcxx - Class time_put_byname > > 462 Function Interfaces 463 464 7-194. Primary vtable for underflow_error 465 7-195. typeinfo for underflow_error 466 7-196. Primary vtable for invalid_argument 467 7-197. typeinfo for invalid_argument 468 7-198. Primary vtable for moneypunct_byname 469 7-199. typeinfo for moneypunct_byname 470 7-200. libstdcxx - Class moneypunct_byname 471 Function Interfaces 472 473 7-201. Primary vtable for moneypunct_byname 474 7-202. typeinfo for moneypunct_byname 475 7-203. libstdcxx - Class moneypunct_byname 476 Function Interfaces 477 478 7-204. Primary vtable for moneypunct_byname 479 7-205. typeinfo for moneypunct_byname 480 7-206. libstdcxx - Class moneypunct_byname 481 Function Interfaces 482 483 7-207. Primary vtable for moneypunct_byname 484 7-208. typeinfo for moneypunct_byname 485 7-209. libstdcxx - Class moneypunct_byname 486 Function Interfaces 487 488 7-210. Primary vtable for basic_stringstream, allocator > 490 491 7-211. Secondary vtable for basic_stringstream, allocator > 493 494 7-212. Secondary vtable for basic_stringstream, allocator > 496 497 7-213. VTT for basic_stringstream, 498 allocator > 499 500 7-214. libstdcxx - Class basic_stringstream, allocator > Function 502 Interfaces 503 504 7-215. Primary vtable for basic_stringstream, allocator > 506 507 7-216. Secondary vtable for basic_stringstream, allocator > 509 510 7-217. Secondary vtable for basic_stringstream, allocator > 512 513 7-218. VTT for basic_stringstream, allocator > 515 516 7-219. libstdcxx - Class basic_stringstream, allocator > Function 518 Interfaces 519 520 7-220. Primary vtable for basic_istringstream, allocator > 522 523 7-221. Secondary vtable for basic_istringstream, allocator > 525 526 7-222. VTT for basic_istringstream, 527 allocator > 528 529 7-223. libstdcxx - Class basic_istringstream, allocator > Function 531 Interfaces 532 533 7-224. Primary vtable for basic_istringstream, allocator > 535 536 7-225. Secondary vtable for basic_istringstream, allocator > 538 539 7-226. VTT for basic_istringstream, allocator > 541 542 7-227. libstdcxx - Class basic_istringstream, allocator > Function 544 Interfaces 545 546 7-228. Primary vtable for basic_ostringstream, allocator > 548 549 7-229. Secondary vtable for basic_ostringstream, allocator > 551 552 7-230. VTT for basic_ostringstream, 553 allocator > 554 555 7-231. libstdcxx - Class basic_ostringstream, allocator > Function 557 Interfaces 558 559 7-232. Primary vtable for basic_ostringstream, allocator > 561 562 7-233. Secondary vtable for basic_ostringstream, allocator > 564 565 7-234. VTT for basic_ostringstream, allocator > 567 568 7-235. libstdcxx - Class basic_ostringstream, allocator > Function 570 Interfaces 571 572 7-236. Primary vtable for __ctype_abstract_base 573 7-237. Primary vtable for __ctype_abstract_base 574 7-238. Primary vtable for __codecvt_abstract_base 576 577 7-239. Primary vtable for ctype 578 7-240. libstdcxx - Class ctype Function Interfaces 579 7-241. Primary vtable for ctype 580 7-242. typeinfo for ctype 581 7-243. libstdcxx - Class ctype Function Interfaces 582 7-244. Primary vtable for codecvt 583 7-245. typeinfo for codecvt 584 7-246. Primary vtable for __codecvt_abstract_base 586 587 7-247. libstdcxx - Class codecvt 588 Function Interfaces 589 590 7-248. Primary vtable for codecvt 591 7-249. typeinfo for codecvt 592 7-250. libstdcxx - Class codecvt 593 Function Interfaces 594 595 7-251. Primary vtable for collate 596 7-252. typeinfo for collate 597 7-253. libstdcxx - Class collate Function Interfaces 598 7-254. Primary vtable for collate 599 7-255. typeinfo for collate 600 7-256. libstdcxx - Class collate Function Interfaces 601 7-257. libstdcxx - Class num_get > > 603 Function Interfaces 604 605 7-258. libstdcxx - Class num_get > > 607 Function Interfaces 608 609 7-259. libstdcxx - Class num_put > > 611 Function Interfaces 612 613 7-260. libstdcxx - Class num_put > > 615 Function Interfaces 616 617 7-261. Primary vtable for bad_cast 618 7-262. typeinfo for bad_cast 619 7-263. typeinfo for ios_base 620 7-264. Primary vtable for messages 621 7-265. libstdcxx - Class messages Function Interfaces 622 7-266. Primary vtable for messages 623 7-267. libstdcxx - Class messages Function Interfaces 624 7-268. Primary vtable for numpunct 625 7-269. typeinfo for numpunct 626 7-270. libstdcxx - Class numpunct Function Interfaces 627 7-271. Primary vtable for numpunct 628 7-272. typeinfo for numpunct 629 7-273. libstdcxx - Class numpunct Function Interfaces 630 7-274. Primary vtable for time_get > > 632 633 7-275. libstdcxx - Class time_get > > 635 Function Interfaces 636 637 7-276. Primary vtable for time_get > > 639 640 7-277. libstdcxx - Class time_get > > 642 Function Interfaces 643 644 7-278. libstdcxx - Class time_put > > 646 Function Interfaces 647 648 7-279. libstdcxx - Class time_put > > 650 Function Interfaces 651 652 7-280. Primary vtable for bad_alloc 653 7-281. typeinfo for bad_alloc 654 7-282. Primary vtable for basic_ios > 655 7-283. Primary vtable for exception 656 7-284. typeinfo for exception 657 7-285. Primary vtable for money_get > > 659 660 7-286. typeinfo for money_get > > 662 663 7-287. libstdcxx - Class money_get > > 665 Function Interfaces 666 667 7-288. Primary vtable for money_get > > 669 670 7-289. typeinfo for money_get > > 672 673 7-290. libstdcxx - Class money_get > > 675 Function Interfaces 676 677 7-291. Primary vtable for money_put > > 679 680 7-292. typeinfo for money_put > > 682 683 7-293. libstdcxx - Class money_put > > 685 Function Interfaces 686 687 7-294. Primary vtable for money_put > > 689 690 7-295. typeinfo for money_put > > 692 693 7-296. libstdcxx - Class money_put > > 695 Function Interfaces 696 697 7-297. Primary vtable for strstream 698 7-298. Secondary vtable for strstream 699 7-299. Secondary vtable for strstream 700 7-300. VTT for strstream 701 7-301. libstdcxx - Class strstream Function Interfaces 702 7-302. typeinfo for time_base 703 7-303. Primary vtable for type_info 704 7-304. typeinfo for type_info 705 _________________________________________________________ 706 707 Foreword 708 709 This is version 3.0Preview1 of the Linux Standard Base C++ 710 Specification for Itanium(TM). An implementation of this 711 version of the specification may not claim to be an 712 implementation of the Linux Standard Base unless it has 713 successfully completed the compliance process as defined by 714 the Free Standards Group. 715 _________________________________________________________ 716 717 Introduction 718 719 The LSB defines a binary interface for application programs 720 that are compiled and packaged for LSB-conforming 721 implementations on many different hardware architectures. 722 Since a binary specification shall include information 723 specific to the computer processor architecture for which it 724 is intended, it is not possible for a single document to 725 specify the interface for all possible LSB-conforming 726 implementations. Therefore, the LSB is a family of 727 specifications, rather than a single one. 728 729 This document should be used in conjunction with the documents 730 it references. This document enumerates the system components 731 it includes, but descriptions of those components may be 732 included entirely or partly in this document, partly in other 733 documents, or entirely in other reference documents. For 734 example, the section that describes system service routines 735 includes a list of the system routines supported in this 736 interface, formal declarations of the data structures they use 737 that are visible to applications, and a pointer to the 738 underlying referenced specification for information about the 739 syntax and semantics of each call. Only those routines not 740 described in standards referenced by this document, or 741 extensions to those standards, are described in the detail. 742 Information referenced in this way is as much a part of this 743 document as is the information explicitly included here. 744 745 The specification carries a version number of either the form 746 x.y or x.y.z. This version number carries the following 747 meaning: 748 749 * The first number (x) is the major version number. All 750 versions with the same major version number should share 751 binary compatibility. Any addition or deletion of a new 752 library results in a new version number. Interfaces marked 753 as deprecated may be removed from the specification at a 754 major version change. 755 * The second number (y) is the minor version number. 756 Individual interfaces may be added if all certified 757 implementations already had that (previously undocumented) 758 interface. Interfaces may be marked as deprecated at a 759 minor version change. Other minor changes may be permitted 760 at the discretion of the LSB workgroup. 761 * The third number (z), if present, is the editorial level. 762 Only editorial changes should be included in such 763 versions. 764 765 I. Introductory Elements 766 767 Table of Contents 768 1. Scope 769 2. Normative References 770 3. Requirements 771 4. Definitions 772 5. Terminology 773 6. Documentation Conventions 774 _________________________________________________________ 775 776 Chapter 1. Scope 777 778 1.1. General 779 780 The Linux Standard Base (LSB) defines a system interface for 781 compiled applications and a minimal environment for support of 782 installation scripts. Its purpose is to enable a uniform 783 industry standard environment for high-volume applications 784 conforming to the LSB. 785 786 These specifications are composed of two basic parts: A common 787 specification ("LSB-generic") describing those parts of the 788 interface that remain constant across all implementations of 789 the LSB, and an architecture-specific specification 790 ("LSB-arch") describing the parts of the interface that vary 791 by processor architecture. Together, the LSB-generic and the 792 architecture-specific supplement for a single hardware 793 architecture provide a complete interface specification for 794 compiled application programs on systems that share a common 795 hardware architecture. 796 797 The LSB-generic document shall be used in conjunction with an 798 architecture-specific supplement. Whenever a section of the 799 LSB-generic specification shall be supplemented by 800 architecture-specific information, the LSB-generic document 801 includes a reference to the architecture supplement. 802 Architecture supplements may also contain additional 803 information that is not referenced in the LSB-generic 804 document. 805 806 The LSB contains both a set of Application Program Interfaces 807 (APIs) and Application Binary Interfaces (ABIs). APIs may 808 appear in the source code of portable applications, while the 809 compiled binary of that application may use the larger set of 810 ABIs. A conforming implementation shall provide all of the 811 ABIs listed here. The compilation system may replace (e.g. by 812 macro definition) certain APIs with calls to one or more of 813 the underlying binary interfaces, and may insert calls to 814 binary interfaces as needed. 815 816 The LSB is primarily a binary interface definition. Not all of 817 the source level APIs available to applications may be 818 contained in this specification. 819 _________________________________________________________ 820 821 1.2. Module Specific Scope 822 823 This is the C++ module of the Linux Standards Base (LSB). This 824 module supplements the core interfaces by providing system 825 interfaces, libraries, and a runtime environment for 826 applications built using the C++ programming language. These 827 interfaces provide low-level support for the core constructs 828 of the language, and implement the standard base C++ 829 libraries. 830 831 Interfaces described in this module are presented in terms of 832 C++; the binary interfaces will use encoded or mangled 833 versions of the names. 834 _________________________________________________________ 835 836 Chapter 2. Normative References 837 838 The specifications listed below are referenced in whole or in 839 part by this module of the Linux Standard Base. In this 840 specification, where only a particular section of one of these 841 references is identified, then the normative reference is to 842 that section alone, and the rest of the referenced document is 843 informative. 844 845 Table 2-1. Normative References 846 Name Title URL 847 ISO POSIX (2003) 848 849 ISO/IEC 9945-1:2003 Information technology -- Portable 850 Operating System Interface (POSIX) -- Part 1: Base Definitions 851 852 ISO/IEC 9945-2:2003 Information technology -- Portable 853 Operating System Interface (POSIX) -- Part 2: System 854 Interfaces 855 856 ISO/IEC 9945-3:2003 Information technology -- Portable 857 Operating System Interface (POSIX) -- Part 3: Shell and 858 Utilities 859 860 ISO/IEC 9945-4:2003 Information technology -- Portable 861 Operating System Interface (POSIX) -- Part 4: Rationale 862 863 Including Technical Cor. 1: 2004 864 http://www.unix.org/version3/ 865 ISO/IEC 14882: 2003 C++ Language ISO/IEC 14882: 2003 866 Programming languages --C++ 867 Itanium C++ ABI Itanium C++ ABI (Revision: 1.75) 868 http://www.codesourcery.com/cxx-abi/abi.html 869 _________________________________________________________ 870 871 Chapter 3. Requirements 872 873 3.1. Relevant Libraries 874 875 The libraries listed in Table 3-1 shall be available on a 876 Linux Standard Base system, with the specified runtime names. 877 878 Table 3-1. Standard Library Names 879 Library Runtime Name 880 libstdcxx libstdc++.so.6 881 882 These libraries will be in an implementation-defined directory 883 which the dynamic linker shall search by default. 884 _________________________________________________________ 885 886 3.2. LSB Implementation Conformance 887 888 An implementation shall satisfy the following requirements: 889 890 * The implementation shall implement fully the architecture 891 described in the hardware manual for the target processor 892 architecture. 893 * The implementation shall be capable of executing compiled 894 applications having the format and using the system 895 interfaces described in this document. 896 * The implementation shall provide libraries containing the 897 interfaces specified by this document, and shall provide a 898 dynamic linking mechanism that allows these interfaces to 899 be attached to applications at runtime. All the interfaces 900 shall behave as specified in this document. 901 * The map of virtual memory provided by the implementation 902 shall conform to the requirements of this document. 903 * The implementation's low-level behavior with respect to 904 function call linkage, system traps, signals, and other 905 such activities shall conform to the formats described in 906 this document. 907 * The implementation shall provide all of the mandatory 908 interfaces in their entirety. 909 * The implementation may provide one or more of the optional 910 interfaces. Each optional interface that is provided shall 911 be provided in its entirety. The product documentation 912 shall state which optional interfaces are provided. 913 * The implementation shall provide all files and utilities 914 specified as part of this document in the format defined 915 here and in other referenced documents. All commands and 916 utilities shall behave as required by this document. The 917 implementation shall also provide all mandatory components 918 of an application's runtime environment that are included 919 or referenced in this document. 920 * The implementation, when provided with standard data 921 formats and values at a named interface, shall provide the 922 behavior defined for those values and data formats at that 923 interface. However, a conforming implementation may 924 consist of components which are separately packaged and/or 925 sold. For example, a vendor of a conforming implementation 926 might sell the hardware, operating system, and windowing 927 system as separately packaged items. 928 * The implementation may provide additional interfaces with 929 different names. It may also provide additional behavior 930 corresponding to data values outside the standard ranges, 931 for standard named interfaces. 932 _________________________________________________________ 933 934 3.3. LSB Application Conformance 935 936 An application shall satisfy the following requirements: 937 938 * Its executable files are either shell scripts or object 939 files in the format defined for the Object File Format 940 system interface. 941 * Its object files participate in dynamic linking as defined 942 in the Program Loading and Linking System interface. 943 * It employs only the instructions, traps, and other 944 low-level facilities defined in the Low-Level System 945 interface as being for use by applications. 946 * If it requires any optional interface defined in this 947 document in order to be installed or to execute 948 successfully, the requirement for that optional interface 949 is stated in the application's documentation. 950 * It does not use any interface or data format that is not 951 required to be provided by a conforming implementation, 952 unless: 953 + If such an interface or data format is supplied by 954 another application through direct invocation of that 955 application during execution, that application is in 956 turn an LSB conforming application. 957 + The use of that interface or data format, as well as 958 its source, is identified in the documentation of the 959 application. 960 * It shall not use any values for a named interface that are 961 reserved for vendor extensions. 962 963 A strictly conforming application does not require or use any 964 interface, facility, or implementation-defined extension that 965 is not defined in this document in order to be installed or to 966 execute successfully. 967 _________________________________________________________ 968 969 Chapter 4. Definitions 970 971 For the purposes of this document, the following definitions, 972 as specified in the ISO/IEC Directives, Part 2, 2001, 4th 973 Edition, apply: 974 975 can 976 be able to; there is a possibility of; it is possible 977 to 978 979 cannot 980 be unable to; there is no possibilty of; it is not 981 possible to 982 983 may 984 is permitted; is allowed; is permissible 985 986 need not 987 it is not required that; no...is required 988 989 shall 990 is to; is required to; it is required that; has to; 991 only...is permitted; it is necessary 992 993 shall not 994 is not allowed [permitted] [acceptable] [permissible]; 995 is required to be not; is required that...be not; is 996 not to be 997 998 should 999 it is recommended that; ought to 1000 1001 should not 1002 it is not recommended that; ought not to 1003 _________________________________________________________ 1004 1005 Chapter 5. Terminology 1006 1007 For the purposes of this document, the following terms apply: 1008 1009 archLSB 1010 The architectural part of the LSB Specification which 1011 describes the specific parts of the interface that are 1012 platform specific. The archLSB is complementary to the 1013 gLSB. 1014 1015 Binary Standard 1016 The total set of interfaces that are available to be 1017 used in the compiled binary code of a conforming 1018 application. 1019 1020 gLSB 1021 The common part of the LSB Specification that describes 1022 those parts of the interface that remain constant 1023 across all hardware implementations of the LSB. 1024 1025 implementation-defined 1026 Describes a value or behavior that is not defined by 1027 this document but is selected by an implementor. The 1028 value or behavior may vary among implementations that 1029 conform to this document. An application should not 1030 rely on the existence of the value or behavior. An 1031 application that relies on such a value or behavior 1032 cannot be assured to be portable across conforming 1033 implementations. The implementor shall document such a 1034 value or behavior so that it can be used correctly by 1035 an application. 1036 1037 Shell Script 1038 A file that is read by an interpreter (e.g., awk). The 1039 first line of the shell script includes a reference to 1040 its interpreter binary. 1041 1042 Source Standard 1043 The set of interfaces that are available to be used in 1044 the source code of a conforming application. 1045 1046 undefined 1047 Describes the nature of a value or behavior not defined 1048 by this document which results from use of an invalid 1049 program construct or invalid data input. The value or 1050 behavior may vary among implementations that conform to 1051 this document. An application should not rely on the 1052 existence or validity of the value or behavior. An 1053 application that relies on any particular value or 1054 behavior cannot be assured to be portable across 1055 conforming implementations. 1056 1057 unspecified 1058 Describes the nature of a value or behavior not 1059 specified by this document which results from use of a 1060 valid program construct or valid data input. The value 1061 or behavior may vary among implementations that conform 1062 to this document. An application should not rely on the 1063 existence or validity of the value or behavior. An 1064 application that relies on any particular value or 1065 behavior cannot be assured to be portable across 1066 conforming implementations. 1067 1068 Other terms and definitions used in this document shall have 1069 the same meaning as defined in Chapter 3 of the Base 1070 Definitions volume of ISO POSIX (2003). 1071 _________________________________________________________ 1072 1073 Chapter 6. Documentation Conventions 1074 1075 Throughout this document, the following typographic 1076 conventions are used: 1077 1078 function() 1079 the name of a function 1080 1081 command 1082 the name of a command or utility 1083 1084 CONSTANT 1085 a constant value 1086 1087 parameter 1088 a parameter 1089 1090 variable 1091 a variable 1092 1093 Throughout this specification, several tables of interfaces 1094 are presented. Each entry in these tables has the following 1095 format: 1096 1097 name 1098 the name of the interface 1099 1100 (symver) 1101 An optional symbol version identifier, if required. 1102 1103 [refno] 1104 A reference number indexing the table of referenced 1105 specifications that follows this table. 1106 1107 For example, 1108 1109 forkpty(GLIBC_2.0) [1] 1110 1111 refers to the interface named forkpty() with symbol version 1112 GLIBC_2.0 that is defined in the first of the listed 1113 references below the table. 1114 1115 II. Base Libraries 1116 1117 Table of Contents 1118 7. Libraries 1119 _________________________________________________________ 1120 1121 Chapter 7. Libraries 1122 1123 An LSB-conforming implementation shall support base libraries 1124 which provide interfaces for accessing the operating system, 1125 processor and other hardware in the system. 1126 1127 Only those interfaces that are unique to the Itanium(TM) 1128 platform are defined here. This section should be used in 1129 conjunction with the corresponding section in the Linux 1130 Standard Base Specification. 1131 _________________________________________________________ 1132 1133 7.1. Interfaces for libstdcxx 1134 1135 Table 7-1 defines the library name and shared object name for 1136 the libstdcxx library 1137 1138 Table 7-1. libstdcxx Definition 1139 Library: libstdcxx 1140 SONAME: libstdc++.so.6 1141 1142 The behavior of the interfaces in this library is specified by 1143 the following specifications: 1144 1145 Itanium C++ ABI 1146 ISO/IEC 14882: 2003 C++ Language 1147 _________________________________________________________ 1148 1149 7.1.1. C++ Runtime Support 1150 _________________________________________________________ 1151 1152 7.1.1.1. Interfaces for C++ Runtime Support 1153 1154 An LSB conforming implementation shall provide the 1155 architecture specific methods for C++ Runtime Support 1156 specified in Table 7-2, with the full mandatory functionality 1157 as described in the referenced underlying specification. 1158 1159 Table 7-2. libstdcxx - C++ Runtime Support Function Interfaces 1160 operator new[](unsigned long)(GLIBCXX_3.4) [1] 1161 operator new[](unsigned long, nothrow_t const&)(GLIBCXX_3.4) 1162 [1] 1163 operator new(unsigned long)(GLIBCXX_3.4) [1] 1164 operator new(unsigned long, nothrow_t const&)(GLIBCXX_3.4) [1] 1165 1166 Referenced Specification(s) 1167 1168 [1]. ISO/IEC 14882: 2003 C++ Language 1169 _________________________________________________________ 1170 1171 7.1.2. C++ type descriptors for built-in types 1172 _________________________________________________________ 1173 1174 7.1.2.1. Interfaces for C++ type descriptors for built-in types 1175 1176 No external methods are defined for libstdcxx - C++ type 1177 descriptors for built-in types 1178 _________________________________________________________ 1179 1180 7.1.3. C++ Unsorted Interfaces 1181 _________________________________________________________ 1182 1183 7.1.3.1. Interfaces for C++ Unsorted Interfaces 1184 1185 No external methods are defined for libstdcxx - C++ Unsorted 1186 Interfaces 1187 _________________________________________________________ 1188 1189 7.1.4. struct numeric_limits 1190 _________________________________________________________ 1191 1192 7.1.4.1. Interfaces for struct numeric_limits 1193 1194 No external methods are defined for libstdcxx - struct 1195 numeric_limits 1196 _________________________________________________________ 1197 1198 7.1.5. struct __numeric_limits_base 1199 _________________________________________________________ 1200 1201 7.1.5.1. Interfaces for struct __numeric_limits_base 1202 1203 No external methods are defined for libstdcxx - struct 1204 __numeric_limits_base 1205 _________________________________________________________ 1206 1207 7.1.6. struct numeric_limits 1208 _________________________________________________________ 1209 1210 7.1.6.1. Interfaces for struct numeric_limits 1211 1212 No external methods are defined for libstdcxx - struct 1213 numeric_limits 1214 _________________________________________________________ 1215 1216 7.1.7. struct numeric_limits 1217 _________________________________________________________ 1218 1219 7.1.7.1. Interfaces for struct numeric_limits 1220 1221 No external methods are defined for libstdcxx - struct 1222 numeric_limits 1223 _________________________________________________________ 1224 1225 7.1.8. struct numeric_limits 1226 _________________________________________________________ 1227 1228 7.1.8.1. Interfaces for struct numeric_limits 1229 1230 No external methods are defined for libstdcxx - struct 1231 numeric_limits 1232 _________________________________________________________ 1233 1234 7.1.9. struct numeric_limits 1235 _________________________________________________________ 1236 1237 7.1.9.1. Interfaces for struct numeric_limits 1238 1239 No external methods are defined for libstdcxx - struct 1240 numeric_limits 1241 _________________________________________________________ 1242 1243 7.1.10. struct numeric_limits 1244 _________________________________________________________ 1245 1246 7.1.10.1. Interfaces for struct numeric_limits 1247 1248 No external methods are defined for libstdcxx - struct 1249 numeric_limits 1250 _________________________________________________________ 1251 1252 7.1.11. struct numeric_limits 1253 _________________________________________________________ 1254 1255 7.1.11.1. Interfaces for struct numeric_limits 1256 1257 No external methods are defined for libstdcxx - struct 1258 numeric_limits 1259 _________________________________________________________ 1260 1261 7.1.12. struct numeric_limits 1262 _________________________________________________________ 1263 1264 7.1.12.1. Interfaces for struct numeric_limits 1265 1266 No external methods are defined for libstdcxx - struct 1267 numeric_limits 1268 _________________________________________________________ 1269 1270 7.1.13. struct numeric_limits 1271 _________________________________________________________ 1272 1273 7.1.13.1. Interfaces for struct numeric_limits 1274 1275 No external methods are defined for libstdcxx - struct 1276 numeric_limits 1277 _________________________________________________________ 1278 1279 7.1.14. struct numeric_limits 1280 _________________________________________________________ 1281 1282 7.1.14.1. Interfaces for struct numeric_limits 1283 1284 No external methods are defined for libstdcxx - struct 1285 numeric_limits 1286 _________________________________________________________ 1287 1288 7.1.15. struct numeric_limits 1289 _________________________________________________________ 1290 1291 7.1.15.1. Interfaces for struct numeric_limits 1292 1293 No external methods are defined for libstdcxx - struct 1294 numeric_limits 1295 _________________________________________________________ 1296 1297 7.1.16. struct numeric_limits 1298 _________________________________________________________ 1299 1300 7.1.16.1. Interfaces for struct numeric_limits 1301 1302 No external methods are defined for libstdcxx - struct 1303 numeric_limits 1304 _________________________________________________________ 1305 1306 7.1.17. struct numeric_limits 1307 _________________________________________________________ 1308 1309 7.1.17.1. Interfaces for struct numeric_limits 1310 1311 No external methods are defined for libstdcxx - struct 1312 numeric_limits 1313 _________________________________________________________ 1314 1315 7.1.18. struct numeric_limits 1316 _________________________________________________________ 1317 1318 7.1.18.1. Interfaces for struct numeric_limits 1319 1320 No external methods are defined for libstdcxx - struct 1321 numeric_limits 1322 _________________________________________________________ 1323 1324 7.1.19. struct numeric_limits 1325 _________________________________________________________ 1326 1327 7.1.19.1. Interfaces for struct numeric_limits 1328 1329 No external methods are defined for libstdcxx - struct 1330 numeric_limits 1331 _________________________________________________________ 1332 1333 7.1.20. struct numeric_limits 1334 _________________________________________________________ 1335 1336 7.1.20.1. Interfaces for struct numeric_limits 1337 1338 No external methods are defined for libstdcxx - struct 1339 numeric_limits 1340 _________________________________________________________ 1341 1342 7.1.21. Class allocator 1343 _________________________________________________________ 1344 1345 7.1.21.1. Class data for allocator 1346 _________________________________________________________ 1347 1348 7.1.21.2. Interfaces for Class allocator 1349 1350 No external methods are defined for libstdcxx - Class 1351 std::allocator 1352 _________________________________________________________ 1353 1354 7.1.22. Class allocator 1355 _________________________________________________________ 1356 1357 7.1.22.1. Class data for allocator 1358 _________________________________________________________ 1359 1360 7.1.22.2. Interfaces for Class allocator 1361 1362 No external methods are defined for libstdcxx - Class 1363 std::allocator 1364 _________________________________________________________ 1365 1366 7.1.23. facet functions 1367 _________________________________________________________ 1368 1369 7.1.23.1. Interfaces for facet functions 1370 1371 No external methods are defined for libstdcxx - facet 1372 functions 1373 _________________________________________________________ 1374 1375 7.1.24. Class basic_string 1376 _________________________________________________________ 1377 1378 7.1.24.1. Interfaces for Class basic_string 1379 1380 An LSB conforming implementation shall provide the 1381 architecture specific methods for Class std::basic_string 1382 specified in Table 7-3, with the full mandatory functionality 1383 as described in the referenced underlying specification. 1384 1385 Table 7-3. libstdcxx - Class basic_string Function Interfaces 1386 basic_string, allocator 1387 >::find_last_of(wchar_t const*, unsigned long) 1388 const(GLIBCXX_3.4) [1] 1389 basic_string, allocator 1390 >::find_last_of(wchar_t const*, unsigned long, unsigned long) 1391 const(GLIBCXX_3.4) [1] 1392 basic_string, allocator 1393 >::find_last_of(basic_string, 1394 allocator > const&, unsigned long) const(GLIBCXX_3.4) 1395 [1] 1396 basic_string, allocator 1397 >::find_last_of(wchar_t, unsigned long) const(GLIBCXX_3.4) [1] 1398 basic_string, allocator 1399 >::find_first_of(wchar_t const*, unsigned long) 1400 const(GLIBCXX_3.4) [1] 1401 basic_string, allocator 1402 >::find_first_of(wchar_t const*, unsigned long, unsigned long) 1403 const(GLIBCXX_3.4) [1] 1404 basic_string, allocator 1405 >::find_first_of(basic_string, 1406 allocator > const&, unsigned long) const(GLIBCXX_3.4) 1407 [1] 1408 basic_string, allocator 1409 >::find_first_of(wchar_t, unsigned long) const(GLIBCXX_3.4) 1410 [1] 1411 basic_string, allocator 1412 >::find_last_not_of(wchar_t const*, unsigned long) 1413 const(GLIBCXX_3.4) [1] 1414 basic_string, allocator 1415 >::find_last_not_of(wchar_t const*, unsigned long, unsigned 1416 long) const(GLIBCXX_3.4) [1] 1417 basic_string, allocator 1418 >::find_last_not_of(basic_string, allocator > const&, unsigned 1420 long) const(GLIBCXX_3.4) [1] 1421 basic_string, allocator 1422 >::find_last_not_of(wchar_t, unsigned long) const(GLIBCXX_3.4) 1423 [1] 1424 basic_string, allocator 1425 >::find_first_not_of(wchar_t const*, unsigned long) 1426 const(GLIBCXX_3.4) [1] 1427 basic_string, allocator 1428 >::find_first_not_of(wchar_t const*, unsigned long, unsigned 1429 long) const(GLIBCXX_3.4) [1] 1430 basic_string, allocator 1431 >::find_first_not_of(basic_string, allocator > const&, unsigned 1433 long) const(GLIBCXX_3.4) [1] 1434 basic_string, allocator 1435 >::find_first_not_of(wchar_t, unsigned long) 1436 const(GLIBCXX_3.4) [1] 1437 basic_string, allocator 1438 >::at(unsigned long) const(GLIBCXX_3.4) [1] 1439 basic_string, allocator 1440 >::copy(wchar_t*, unsigned long, unsigned long) 1441 const(GLIBCXX_3.4) [1] 1442 basic_string, allocator 1443 >::find(wchar_t const*, unsigned long) const(GLIBCXX_3.4) [1] 1444 basic_string, allocator 1445 >::find(wchar_t const*, unsigned long, unsigned long) 1446 const(GLIBCXX_3.4) [1] 1447 basic_string, allocator 1448 >::find(basic_string, 1449 allocator > const&, unsigned long) const(GLIBCXX_3.4) 1450 [1] 1451 basic_string, allocator 1452 >::find(wchar_t, unsigned long) const(GLIBCXX_3.4) [1] 1453 basic_string, allocator 1454 >::rfind(wchar_t const*, unsigned long) const(GLIBCXX_3.4) [1] 1455 basic_string, allocator 1456 >::rfind(wchar_t const*, unsigned long, unsigned long) 1457 const(GLIBCXX_3.4) [1] 1458 basic_string, allocator 1459 >::rfind(basic_string, 1460 allocator > const&, unsigned long) const(GLIBCXX_3.4) 1461 [1] 1462 basic_string, allocator 1463 >::rfind(wchar_t, unsigned long) const(GLIBCXX_3.4) [1] 1464 basic_string, allocator 1465 >::substr(unsigned long, unsigned long) const(GLIBCXX_3.4) [1] 1466 basic_string, allocator 1467 >::compare(unsigned long, unsigned long, wchar_t const*) 1468 const(GLIBCXX_3.4) [1] 1469 basic_string, allocator 1470 >::compare(unsigned long, unsigned long, wchar_t const*, 1471 unsigned long) const(GLIBCXX_3.4) [1] 1472 basic_string, allocator 1473 >::compare(unsigned long, unsigned long, basic_string, allocator > const&) 1475 const(GLIBCXX_3.4) [1] 1476 basic_string, allocator 1477 >::compare(unsigned long, unsigned long, basic_string, allocator > const&, unsigned 1479 long, unsigned long) const(GLIBCXX_3.4) [1] 1480 basic_string, allocator 1481 >::_M_check(unsigned long, char const*) const(GLIBCXX_3.4) [1] 1482 basic_string, allocator 1483 >::_M_limit(unsigned long, unsigned long) const(GLIBCXX_3.4) 1484 [1] 1485 basic_string, allocator 1486 >::operator[](unsigned long) const(GLIBCXX_3.4) [1] 1487 basic_string, allocator 1488 >::_M_limit(unsigned long, unsigned long) const(GLIBCXX_3.4) 1489 [1] 1490 basic_string, allocator 1491 >::_S_construct(unsigned long, wchar_t, allocator 1492 const&)(GLIBCXX_3.4) [1] 1493 basic_string, allocator 1494 >::_M_replace_aux(unsigned long, unsigned long, unsigned long, 1495 wchar_t)(GLIBCXX_3.4) [1] 1496 basic_string, allocator 1497 >::_M_replace_safe(unsigned long, unsigned long, wchar_t 1498 const*, unsigned long)(GLIBCXX_3.4) [1] 1499 basic_string, allocator 1500 >::at(unsigned long)(GLIBCXX_3.4) [1] 1501 basic_string, allocator 1502 >::_Rep::_M_clone(allocator const&, unsigned 1503 long)(GLIBCXX_3.4) [1] 1504 basic_string, allocator 1505 >::_Rep::_S_create(unsigned long, unsigned long, 1506 allocator const&)(GLIBCXX_3.4) [1] 1507 basic_string, allocator 1508 >::erase(unsigned long, unsigned long)(GLIBCXX_3.4) [1] 1509 basic_string, allocator 1510 >::append(wchar_t const*, unsigned long)(GLIBCXX_3.4) [1] 1511 basic_string, allocator 1512 >::append(basic_string, 1513 allocator > const&, unsigned long, unsigned 1514 long)(GLIBCXX_3.4) [1] 1515 basic_string, allocator 1516 >::append(unsigned long, wchar_t)(GLIBCXX_3.4) [1] 1517 basic_string, allocator 1518 >::assign(wchar_t const*, unsigned long)(GLIBCXX_3.4) [1] 1519 basic_string, allocator 1520 >::assign(basic_string, 1521 allocator > const&, unsigned long, unsigned 1522 long)(GLIBCXX_3.4) [1] 1523 basic_string, allocator 1524 >::assign(unsigned long, wchar_t)(GLIBCXX_3.4) [1] 1525 basic_string, allocator 1526 >::insert(__gnu_cxx::__normal_iterator, allocator 1528 > >, unsigned long, wchar_t)(GLIBCXX_3.4) [1] 1529 basic_string, allocator 1530 >::insert(unsigned long, wchar_t const*)(GLIBCXX_3.4) [1] 1531 basic_string, allocator 1532 >::insert(unsigned long, wchar_t const*, unsigned 1533 long)(GLIBCXX_3.4) [1] 1534 basic_string, allocator 1535 >::insert(unsigned long, basic_string, allocator > 1537 const&)(GLIBCXX_3.4) [1] 1538 basic_string, allocator 1539 >::insert(unsigned long, basic_string, allocator > const&, unsigned 1541 long, unsigned long)(GLIBCXX_3.4) [1] 1542 basic_string, allocator 1543 >::insert(unsigned long, unsigned long, wchar_t)(GLIBCXX_3.4) 1544 [1] 1545 basic_string, allocator 1546 >::resize(unsigned long)(GLIBCXX_3.4) [1] 1547 basic_string, allocator 1548 >::resize(unsigned long, wchar_t)(GLIBCXX_3.4) [1] 1549 basic_string, allocator 1550 >::replace(__gnu_cxx::__normal_iterator, allocator 1552 > >, __gnu_cxx::__normal_iterator, allocator 1554 > >, wchar_t const*, unsigned long)(GLIBCXX_3.4) [1] 1555 basic_string, allocator 1556 >::replace(__gnu_cxx::__normal_iterator, allocator 1558 > >, __gnu_cxx::__normal_iterator, allocator 1560 > >, unsigned long, wchar_t)(GLIBCXX_3.4) [1] 1561 basic_string, allocator 1562 >::replace(unsigned long, unsigned long, wchar_t 1563 const*)(GLIBCXX_3.4) [1] 1564 basic_string, allocator 1565 >::replace(unsigned long, unsigned long, wchar_t const*, 1566 unsigned long)(GLIBCXX_3.4) [1] 1567 basic_string, allocator 1568 >::replace(unsigned long, unsigned long, basic_string, allocator > 1570 const&)(GLIBCXX_3.4) [1] 1571 basic_string, allocator 1572 >::replace(unsigned long, unsigned long, basic_string, allocator > const&, unsigned 1574 long, unsigned long)(GLIBCXX_3.4) [1] 1575 basic_string, allocator 1576 >::replace(unsigned long, unsigned long, unsigned long, 1577 wchar_t)(GLIBCXX_3.4) [1] 1578 basic_string, allocator 1579 >::reserve(unsigned long)(GLIBCXX_3.4) [1] 1580 basic_string, allocator 1581 >::_M_mutate(unsigned long, unsigned long, unsigned 1582 long)(GLIBCXX_3.4) [1] 1583 basic_string, allocator 1584 >::basic_string(wchar_t const*, unsigned long, 1585 allocator const&)(GLIBCXX_3.4) [1] 1586 basic_string, allocator 1587 >::basic_string(basic_string, 1588 allocator > const&, unsigned long, unsigned 1589 long)(GLIBCXX_3.4) [1] 1590 basic_string, allocator 1591 >::basic_string(basic_string, 1592 allocator > const&, unsigned long, unsigned long, 1593 allocator const&)(GLIBCXX_3.4) [1] 1594 basic_string, allocator 1595 >::basic_string(unsigned long, wchar_t, allocator 1596 const&)(GLIBCXX_3.4) [1] 1597 basic_string, allocator 1598 >::basic_string(wchar_t const*, unsigned long, 1599 allocator const&)(GLIBCXX_3.4) [1] 1600 basic_string, allocator 1601 >::basic_string(basic_string, 1602 allocator > const&, unsigned long, unsigned 1603 long)(GLIBCXX_3.4) [1] 1604 basic_string, allocator 1605 >::basic_string(basic_string, 1606 allocator > const&, unsigned long, unsigned long, 1607 allocator const&)(GLIBCXX_3.4) [1] 1608 basic_string, allocator 1609 >::basic_string(unsigned long, wchar_t, allocator 1610 const&)(GLIBCXX_3.4) [1] 1611 basic_string, allocator 1612 >::operator[](unsigned long)(GLIBCXX_3.4) [1] 1613 1614 Referenced Specification(s) 1615 1616 [1]. ISO/IEC 14882: 2003 C++ Language 1617 _________________________________________________________ 1618 1619 7.1.25. Class istreambuf_iterator > 1620 _________________________________________________________ 1621 1622 7.1.25.1. Interfaces for Class istreambuf_iterator > 1624 1625 No external methods are defined for libstdcxx - Class 1626 std::istreambuf_iterator > 1627 _________________________________________________________ 1628 1629 7.1.26. Class istreambuf_iterator > 1630 _________________________________________________________ 1631 1632 7.1.26.1. Interfaces for Class istreambuf_iterator > 1634 1635 No external methods are defined for libstdcxx - Class 1636 std::istreambuf_iterator > 1637 _________________________________________________________ 1638 1639 7.1.27. Class gslice 1640 _________________________________________________________ 1641 1642 7.1.27.1. Class data for gslice 1643 _________________________________________________________ 1644 1645 7.1.27.2. Interfaces for Class gslice 1646 1647 An LSB conforming implementation shall provide the 1648 architecture specific methods for Class std::gslice specified 1649 in Table 7-4, with the full mandatory functionality as 1650 described in the referenced underlying specification. 1651 1652 Table 7-4. libstdcxx - Class gslice Function Interfaces 1653 gslice::_Indexer::_Indexer(unsigned long, valarray const&, valarray const&)(GLIBCXX_3.4) [1] 1655 gslice::_Indexer::_Indexer(unsigned long, valarray const&, valarray const&)(GLIBCXX_3.4) [1] 1657 1658 Referenced Specification(s) 1659 1660 [1]. ISO/IEC 14882: 2003 C++ Language 1661 _________________________________________________________ 1662 1663 7.1.28. Class __basic_file 1664 _________________________________________________________ 1665 1666 7.1.28.1. Class data for __basic_file 1667 _________________________________________________________ 1668 1669 7.1.28.2. Interfaces for Class __basic_file 1670 1671 An LSB conforming implementation shall provide the 1672 architecture specific methods for Class 1673 std::__basic_file specified in Table 7-5, with the full 1674 mandatory functionality as described in the referenced 1675 underlying specification. 1676 1677 Table 7-5. libstdcxx - Class __basic_file Function 1678 Interfaces 1679 __basic_file::xsgetn(char*, long)(GLIBCXX_3.4) [1] 1680 __basic_file::xsputn(char const*, long)(GLIBCXX_3.4) [1] 1681 __basic_file::seekoff(long, _Ios_Seekdir)(GLIBCXX_3.4) 1682 [1] 1683 __basic_file::xsputn_2(char const*, long, char const*, 1684 long)(GLIBCXX_3.4) [1] 1685 1686 Referenced Specification(s) 1687 1688 [1]. ISO/IEC 14882: 2003 C++ Language 1689 _________________________________________________________ 1690 1691 7.1.29. Class __default_alloc_template 1692 _________________________________________________________ 1693 1694 7.1.29.1. Class data for __default_alloc_template 1695 _________________________________________________________ 1696 1697 7.1.29.2. Interfaces for Class __default_alloc_template 1698 1699 No external methods are defined for libstdcxx - Class 1700 std::__default_alloc_template 1701 _________________________________________________________ 1702 1703 7.1.30. Class valarray 1704 _________________________________________________________ 1705 1706 7.1.30.1. Class data for valarray 1707 _________________________________________________________ 1708 1709 7.1.30.2. Interfaces for Class valarray 1710 1711 An LSB conforming implementation shall provide the 1712 architecture specific methods for Class std::valarray specified in Table 7-6, with the full mandatory 1714 functionality as described in the referenced underlying 1715 specification. 1716 1717 Table 7-6. libstdcxx - Class valarray Function 1718 Interfaces 1719 valarray::size() const(GLIBCXX_3.4) [1] 1720 valarray::valarray(valarray 1721 const&)(GLIBCXX_3.4) [1] 1722 valarray::valarray(unsigned long)(GLIBCXX_3.4) 1723 [1] 1724 valarray::valarray(valarray 1725 const&)(GLIBCXX_3.4) [1] 1726 valarray::valarray(unsigned long)(GLIBCXX_3.4) 1727 [1] 1728 valarray::~valarray()(GLIBCXX_3.4) [1] 1729 valarray::~valarray()(GLIBCXX_3.4) [1] 1730 valarray::operator[](unsigned 1731 long)(GLIBCXX_3.4) [1] 1732 1733 Referenced Specification(s) 1734 1735 [1]. ISO/IEC 14882: 2003 C++ Language 1736 _________________________________________________________ 1737 1738 7.1.31. Class basic_string, allocator 1739 > 1740 _________________________________________________________ 1741 1742 7.1.31.1. Interfaces for Class basic_string, 1743 allocator > 1744 1745 An LSB conforming implementation shall provide the 1746 architecture specific methods for Class 1747 std::basic_string, 1748 std::allocator > specified in Table 7-7, with the full 1749 mandatory functionality as described in the referenced 1750 underlying specification. 1751 1752 Table 7-7. libstdcxx - Class basic_string, allocator > Function Interfaces 1754 basic_string, allocator 1755 >::find_last_of(char const*, unsigned long) const(GLIBCXX_3.4) 1756 [1] 1757 basic_string, allocator 1758 >::find_last_of(char const*, unsigned long, unsigned long) 1759 const(GLIBCXX_3.4) [1] 1760 basic_string, allocator 1761 >::find_last_of(basic_string, 1762 allocator > const&, unsigned long) const(GLIBCXX_3.4) 1763 [1] 1764 basic_string, allocator 1765 >::find_last_of(char, unsigned long) const(GLIBCXX_3.4) [1] 1766 basic_string, allocator 1767 >::find_first_of(char const*, unsigned long) 1768 const(GLIBCXX_3.4) [1] 1769 basic_string, allocator 1770 >::find_first_of(char const*, unsigned long, unsigned long) 1771 const(GLIBCXX_3.4) [1] 1772 basic_string, allocator 1773 >::find_first_of(basic_string, 1774 allocator > const&, unsigned long) const(GLIBCXX_3.4) 1775 [1] 1776 basic_string, allocator 1777 >::find_first_of(char, unsigned long) const(GLIBCXX_3.4) [1] 1778 basic_string, allocator 1779 >::find_last_not_of(char const*, unsigned long) 1780 const(GLIBCXX_3.4) [1] 1781 basic_string, allocator 1782 >::find_last_not_of(char const*, unsigned long, unsigned long) 1783 const(GLIBCXX_3.4) [1] 1784 basic_string, allocator 1785 >::find_last_not_of(basic_string, 1786 allocator > const&, unsigned long) const(GLIBCXX_3.4) 1787 [1] 1788 basic_string, allocator 1789 >::find_last_not_of(char, unsigned long) const(GLIBCXX_3.4) 1790 [1] 1791 basic_string, allocator 1792 >::find_first_not_of(char const*, unsigned long) 1793 const(GLIBCXX_3.4) [1] 1794 basic_string, allocator 1795 >::find_first_not_of(char const*, unsigned long, unsigned 1796 long) const(GLIBCXX_3.4) [1] 1797 basic_string, allocator 1798 >::find_first_not_of(basic_string, 1799 allocator > const&, unsigned long) const(GLIBCXX_3.4) 1800 [1] 1801 basic_string, allocator 1802 >::find_first_not_of(char, unsigned long) const(GLIBCXX_3.4) 1803 [1] 1804 basic_string, allocator 1805 >::at(unsigned long) const(GLIBCXX_3.4) [1] 1806 basic_string, allocator 1807 >::copy(char*, unsigned long, unsigned long) 1808 const(GLIBCXX_3.4) [1] 1809 basic_string, allocator 1810 >::find(char const*, unsigned long) const(GLIBCXX_3.4) [1] 1811 basic_string, allocator 1812 >::find(char const*, unsigned long, unsigned long) 1813 const(GLIBCXX_3.4) [1] 1814 basic_string, allocator 1815 >::find(basic_string, allocator 1816 > const&, unsigned long) const(GLIBCXX_3.4) [1] 1817 basic_string, allocator 1818 >::find(char, unsigned long) const(GLIBCXX_3.4) [1] 1819 basic_string, allocator 1820 >::rfind(char const*, unsigned long) const(GLIBCXX_3.4) [1] 1821 basic_string, allocator 1822 >::rfind(char const*, unsigned long, unsigned long) 1823 const(GLIBCXX_3.4) [1] 1824 basic_string, allocator 1825 >::rfind(basic_string, allocator 1826 > const&, unsigned long) const(GLIBCXX_3.4) [1] 1827 basic_string, allocator 1828 >::rfind(char, unsigned long) const(GLIBCXX_3.4) [1] 1829 basic_string, allocator 1830 >::substr(unsigned long, unsigned long) const(GLIBCXX_3.4) [1] 1831 basic_string, allocator 1832 >::compare(unsigned long, unsigned long, char const*) 1833 const(GLIBCXX_3.4) [1] 1834 basic_string, allocator 1835 >::compare(unsigned long, unsigned long, char const*, unsigned 1836 long) const(GLIBCXX_3.4) [1] 1837 basic_string, allocator 1838 >::compare(unsigned long, unsigned long, basic_string, allocator > const&) 1840 const(GLIBCXX_3.4) [1] 1841 basic_string, allocator 1842 >::compare(unsigned long, unsigned long, basic_string, allocator > const&, unsigned long, 1844 unsigned long) const(GLIBCXX_3.4) [1] 1845 basic_string, allocator 1846 >::_M_check(unsigned long, char const*) const(GLIBCXX_3.4) [1] 1847 basic_string, allocator 1848 >::operator[](unsigned long) const(GLIBCXX_3.4) [1] 1849 basic_string, allocator 1850 >::_S_construct(unsigned long, char, allocator 1851 const&)(GLIBCXX_3.4) [1] 1852 basic_string, allocator 1853 >::_M_replace_aux(unsigned long, unsigned long, unsigned long, 1854 char)(GLIBCXX_3.4) [1] 1855 basic_string, allocator 1856 >::_M_replace_safe(unsigned long, unsigned long, char const*, 1857 unsigned long)(GLIBCXX_3.4) [1] 1858 basic_string, allocator 1859 >::at(unsigned long)(GLIBCXX_3.4) [1] 1860 basic_string, allocator 1861 >::_Rep::_M_clone(allocator const&, unsigned 1862 long)(GLIBCXX_3.4) [1] 1863 basic_string, allocator 1864 >::_Rep::_S_create(unsigned long, unsigned long, 1865 allocator const&)(GLIBCXX_3.4) [1] 1866 basic_string, allocator 1867 >::erase(unsigned long, unsigned long)(GLIBCXX_3.4) [1] 1868 basic_string, allocator 1869 >::append(char const*, unsigned long)(GLIBCXX_3.4) [1] 1870 basic_string, allocator 1871 >::append(basic_string, 1872 allocator > const&, unsigned long, unsigned 1873 long)(GLIBCXX_3.4) [1] 1874 basic_string, allocator 1875 >::append(unsigned long, char)(GLIBCXX_3.4) [1] 1876 basic_string, allocator 1877 >::assign(char const*, unsigned long)(GLIBCXX_3.4) [1] 1878 basic_string, allocator 1879 >::assign(basic_string, 1880 allocator > const&, unsigned long, unsigned 1881 long)(GLIBCXX_3.4) [1] 1882 basic_string, allocator 1883 >::assign(unsigned long, char)(GLIBCXX_3.4) [1] 1884 basic_string, allocator 1885 >::insert(__gnu_cxx::__normal_iterator, allocator > >, 1887 unsigned long, char)(GLIBCXX_3.4) [1] 1888 basic_string, allocator 1889 >::insert(unsigned long, char const*)(GLIBCXX_3.4) [1] 1890 basic_string, allocator 1891 >::insert(unsigned long, char const*, unsigned 1892 long)(GLIBCXX_3.4) [1] 1893 basic_string, allocator 1894 >::insert(unsigned long, basic_string, 1895 allocator > const&)(GLIBCXX_3.4) [1] 1896 basic_string, allocator 1897 >::insert(unsigned long, basic_string, 1898 allocator > const&, unsigned long, unsigned 1899 long)(GLIBCXX_3.4) [1] 1900 basic_string, allocator 1901 >::insert(unsigned long, unsigned long, char)(GLIBCXX_3.4) [1] 1902 basic_string, allocator 1903 >::resize(unsigned long)(GLIBCXX_3.4) [1] 1904 basic_string, allocator 1905 >::resize(unsigned long, char)(GLIBCXX_3.4) [1] 1906 basic_string, allocator 1907 >::replace(__gnu_cxx::__normal_iterator, allocator > >, 1909 __gnu_cxx::__normal_iterator, allocator > >, char const*, unsigned 1911 long)(GLIBCXX_3.4) [1] 1912 basic_string, allocator 1913 >::replace(__gnu_cxx::__normal_iterator, allocator > >, 1915 __gnu_cxx::__normal_iterator, allocator > >, unsigned long, 1917 char)(GLIBCXX_3.4) [1] 1918 basic_string, allocator 1919 >::replace(unsigned long, unsigned long, char 1920 const*)(GLIBCXX_3.4) [1] 1921 basic_string, allocator 1922 >::replace(unsigned long, unsigned long, char const*, unsigned 1923 long)(GLIBCXX_3.4) [1] 1924 basic_string, allocator 1925 >::replace(unsigned long, unsigned long, basic_string, allocator > const&)(GLIBCXX_3.4) [1] 1927 basic_string, allocator 1928 >::replace(unsigned long, unsigned long, basic_string, allocator > const&, unsigned long, 1930 unsigned long)(GLIBCXX_3.4) [1] 1931 basic_string, allocator 1932 >::replace(unsigned long, unsigned long, unsigned long, 1933 char)(GLIBCXX_3.4) [1] 1934 basic_string, allocator 1935 >::reserve(unsigned long)(GLIBCXX_3.4) [1] 1936 basic_string, allocator 1937 >::_M_mutate(unsigned long, unsigned long, unsigned 1938 long)(GLIBCXX_3.4) [1] 1939 basic_string, allocator 1940 >::basic_string(char const*, unsigned long, allocator 1941 const&)(GLIBCXX_3.4) [1] 1942 basic_string, allocator 1943 >::basic_string(basic_string, 1944 allocator > const&, unsigned long, unsigned 1945 long)(GLIBCXX_3.4) [1] 1946 basic_string, allocator 1947 >::basic_string(basic_string, 1948 allocator > const&, unsigned long, unsigned long, 1949 allocator const&)(GLIBCXX_3.4) [1] 1950 basic_string, allocator 1951 >::basic_string(unsigned long, char, allocator 1952 const&)(GLIBCXX_3.4) [1] 1953 basic_string, allocator 1954 >::basic_string(char const*, unsigned long, allocator 1955 const&)(GLIBCXX_3.4) [1] 1956 basic_string, allocator 1957 >::basic_string(basic_string, 1958 allocator > const&, unsigned long, unsigned 1959 long)(GLIBCXX_3.4) [1] 1960 basic_string, allocator 1961 >::basic_string(basic_string, 1962 allocator > const&, unsigned long, unsigned long, 1963 allocator const&)(GLIBCXX_3.4) [1] 1964 basic_string, allocator 1965 >::basic_string(unsigned long, char, allocator 1966 const&)(GLIBCXX_3.4) [1] 1967 basic_string, allocator 1968 >::operator[](unsigned long)(GLIBCXX_3.4) [1] 1969 1970 Referenced Specification(s) 1971 1972 [1]. ISO/IEC 14882: 2003 C++ Language 1973 _________________________________________________________ 1974 1975 7.1.32. Class locale 1976 _________________________________________________________ 1977 1978 7.1.32.1. Interfaces for Class locale 1979 1980 No external methods are defined for libstdcxx - Class 1981 std::locale 1982 _________________________________________________________ 1983 1984 7.1.33. Class __cxxabiv1::__enum_type_info 1985 _________________________________________________________ 1986 1987 7.1.33.1. Class data for __cxxabiv1::__enum_type_info 1988 1989 The virtual table for the __cxxabiv1::__enum_type_info class 1990 is described by Table 7-8 1991 1992 Table 7-8. Primary vtable for __cxxabiv1::__enum_type_info 1993 Base Offset 0 1994 Virtual Base Offset 0 1995 RTTI typeinfo for __cxxabiv1::__enum_type_info 1996 vfunc[0]: __cxxabiv1::__enum_type_info::~__enum_type_info() 1997 vfunc[1]: __cxxabiv1::__enum_type_info::~__enum_type_info() 1998 vfunc[2]: type_info::__is_pointer_p() const 1999 vfunc[3]: type_info::__is_function_p() const 2000 vfunc[4]: type_info::__do_catch(type_info const*, void**, 2001 unsigned int) const 2002 vfunc[5]: type_info::__do_upcast(__cxxabiv1::__class_type_info 2003 const*, void**) const 2004 2005 The Run Time Type Information for the 2006 __cxxabiv1::__enum_type_info class is described by Table 7-9 2007 2008 Table 7-9. typeinfo for __cxxabiv1::__enum_type_info 2009 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2010 Name typeinfo name for __cxxabiv1::__enum_type_info 2011 _________________________________________________________ 2012 2013 7.1.33.2. Interfaces for Class __cxxabiv1::__enum_type_info 2014 2015 No external methods are defined for libstdcxx - Class 2016 __cxxabiv1::__enum_type_info 2017 _________________________________________________________ 2018 2019 7.1.34. Class __cxxabiv1::__array_type_info 2020 _________________________________________________________ 2021 2022 7.1.34.1. Class data for __cxxabiv1::__array_type_info 2023 2024 The virtual table for the __cxxabiv1::__array_type_info class 2025 is described by Table 7-10 2026 2027 Table 7-10. Primary vtable for __cxxabiv1::__array_type_info 2028 Base Offset 0 2029 Virtual Base Offset 0 2030 RTTI typeinfo for __cxxabiv1::__array_type_info 2031 vfunc[0]: __cxxabiv1::__array_type_info::~__array_type_info() 2032 vfunc[1]: __cxxabiv1::__array_type_info::~__array_type_info() 2033 vfunc[2]: type_info::__is_pointer_p() const 2034 vfunc[3]: type_info::__is_function_p() const 2035 vfunc[4]: type_info::__do_catch(type_info const*, void**, 2036 unsigned int) const 2037 vfunc[5]: type_info::__do_upcast(__cxxabiv1::__class_type_info 2038 const*, void**) const 2039 2040 The Run Time Type Information for the 2041 __cxxabiv1::__array_type_info class is described by Table 7-11 2042 2043 Table 7-11. typeinfo for __cxxabiv1::__array_type_info 2044 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2045 Name typeinfo name for __cxxabiv1::__array_type_info 2046 _________________________________________________________ 2047 2048 7.1.34.2. Interfaces for Class __cxxabiv1::__array_type_info 2049 2050 No external methods are defined for libstdcxx - Class 2051 __cxxabiv1::__array_type_info 2052 _________________________________________________________ 2053 2054 7.1.35. Class __cxxabiv1::__class_type_info 2055 _________________________________________________________ 2056 2057 7.1.35.1. Class data for __cxxabiv1::__class_type_info 2058 2059 The virtual table for the __cxxabiv1::__class_type_info class 2060 is described by Table 7-12 2061 2062 Table 7-12. Primary vtable for __cxxabiv1::__class_type_info 2063 Base Offset 0 2064 Virtual Base Offset 0 2065 RTTI typeinfo for __cxxabiv1::__class_type_info 2066 vfunc[0]: __cxxabiv1::__class_type_info::~__class_type_info() 2067 vfunc[1]: __cxxabiv1::__class_type_info::~__class_type_info() 2068 vfunc[2]: type_info::__is_pointer_p() const 2069 vfunc[3]: type_info::__is_function_p() const 2070 vfunc[4]: __cxxabiv1::__class_type_info::__do_catch(type_info 2071 const*, void**, unsigned int) const 2072 vfunc[5]: 2073 __cxxabiv1::__class_type_info::__do_upcast(__cxxabiv1::__class 2074 _type_info const*, void**) const 2075 vfunc[6]: 2076 __cxxabiv1::__class_type_info::__do_upcast(__cxxabiv1::__class 2077 _type_info const*, void const*, 2078 __cxxabiv1::__class_type_info::__upcast_result&) const 2079 vfunc[7]: __cxxabiv1::__class_type_info::__do_dyncast(long, 2080 __cxxabiv1::__class_type_info::__sub_kind, 2081 __cxxabiv1::__class_type_info const*, void const*, 2082 __cxxabiv1::__class_type_info const*, void const*, 2083 __cxxabiv1::__class_type_info::__dyncast_result&) const 2084 vfunc[8]: 2085 __cxxabiv1::__class_type_info::__do_find_public_src(long, void 2086 const*, __cxxabiv1::__class_type_info const*, void const*) 2087 const 2088 2089 The Run Time Type Information for the 2090 __cxxabiv1::__class_type_info class is described by Table 7-13 2091 2092 Table 7-13. typeinfo for __cxxabiv1::__class_type_info 2093 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2094 Name typeinfo name for __cxxabiv1::__class_type_info 2095 _________________________________________________________ 2096 2097 7.1.35.2. Interfaces for Class __cxxabiv1::__class_type_info 2098 2099 An LSB conforming implementation shall provide the 2100 architecture specific methods for Class 2101 __cxxabiv1::__class_type_info specified in Table 7-14, with 2102 the full mandatory functionality as described in the 2103 referenced underlying specification. 2104 2105 Table 7-14. libstdcxx - Class __cxxabiv1::__class_type_info 2106 Function Interfaces 2107 __cxxabiv1::__class_type_info::__do_dyncast(long, 2108 __cxxabiv1::__class_type_info::__sub_kind, 2109 __cxxabiv1::__class_type_info const*, void const*, 2110 __cxxabiv1::__class_type_info const*, void const*, 2111 __cxxabiv1::__class_type_info::__dyncast_result&) 2112 const(CXXABI_1.3) [1] 2113 __cxxabiv1::__class_type_info::__do_find_public_src(long, void 2114 const*, __cxxabiv1::__class_type_info const*, void const*) 2115 const(CXXABI_1.3) [1] 2116 2117 Referenced Specification(s) 2118 2119 [1]. Itanium C++ ABI 2120 _________________________________________________________ 2121 2122 7.1.36. Class __cxxabiv1::__pbase_type_info 2123 _________________________________________________________ 2124 2125 7.1.36.1. Class data for __cxxabiv1::__pbase_type_info 2126 2127 The virtual table for the __cxxabiv1::__pbase_type_info class 2128 is described by Table 7-15 2129 2130 Table 7-15. Primary vtable for __cxxabiv1::__pbase_type_info 2131 Base Offset 0 2132 Virtual Base Offset 0 2133 RTTI typeinfo for __cxxabiv1::__pbase_type_info 2134 vfunc[0]: __cxxabiv1::__pbase_type_info::~__pbase_type_info() 2135 vfunc[1]: __cxxabiv1::__pbase_type_info::~__pbase_type_info() 2136 vfunc[2]: type_info::__is_pointer_p() const 2137 vfunc[3]: type_info::__is_function_p() const 2138 vfunc[4]: __cxxabiv1::__pbase_type_info::__do_catch(type_info 2139 const*, void**, unsigned int) const 2140 vfunc[5]: type_info::__do_upcast(__cxxabiv1::__class_type_info 2141 const*, void**) const 2142 vfunc[6]: 2143 __cxxabiv1::__pbase_type_info::__pointer_catch(__cxxabiv1::__p 2144 base_type_info const*, void**, unsigned int) const 2145 2146 The Run Time Type Information for the 2147 __cxxabiv1::__pbase_type_info class is described by Table 7-16 2148 2149 Table 7-16. typeinfo for __cxxabiv1::__pbase_type_info 2150 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2151 Name typeinfo name for __cxxabiv1::__pbase_type_info 2152 _________________________________________________________ 2153 2154 7.1.36.2. Interfaces for Class __cxxabiv1::__pbase_type_info 2155 2156 No external methods are defined for libstdcxx - Class 2157 __cxxabiv1::__pbase_type_info 2158 _________________________________________________________ 2159 2160 7.1.37. Class __cxxabiv1::__pointer_type_info 2161 _________________________________________________________ 2162 2163 7.1.37.1. Class data for __cxxabiv1::__pointer_type_info 2164 2165 The virtual table for the __cxxabiv1::__pointer_type_info 2166 class is described by Table 7-17 2167 2168 Table 7-17. Primary vtable for __cxxabiv1::__pointer_type_info 2169 Base Offset 0 2170 Virtual Base Offset 0 2171 RTTI typeinfo for __cxxabiv1::__pointer_type_info 2172 vfunc[0]: 2173 __cxxabiv1::__pointer_type_info::~__pointer_type_info() 2174 vfunc[1]: 2175 __cxxabiv1::__pointer_type_info::~__pointer_type_info() 2176 vfunc[2]: __cxxabiv1::__pointer_type_info::__is_pointer_p() 2177 const 2178 vfunc[3]: type_info::__is_function_p() const 2179 vfunc[4]: __cxxabiv1::__pbase_type_info::__do_catch(type_info 2180 const*, void**, unsigned int) const 2181 vfunc[5]: type_info::__do_upcast(__cxxabiv1::__class_type_info 2182 const*, void**) const 2183 vfunc[6]: 2184 __cxxabiv1::__pointer_type_info::__pointer_catch(__cxxabiv1::_ 2185 _pbase_type_info const*, void**, unsigned int) const 2186 2187 The Run Time Type Information for the 2188 __cxxabiv1::__pointer_type_info class is described by Table 2189 7-18 2190 2191 Table 7-18. typeinfo for __cxxabiv1::__pointer_type_info 2192 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2193 Name typeinfo name for __cxxabiv1::__pointer_type_info 2194 _________________________________________________________ 2195 2196 7.1.37.2. Interfaces for Class __cxxabiv1::__pointer_type_info 2197 2198 No external methods are defined for libstdcxx - Class 2199 __cxxabiv1::__pointer_type_info 2200 _________________________________________________________ 2201 2202 7.1.38. Class __cxxabiv1::__function_type_info 2203 _________________________________________________________ 2204 2205 7.1.38.1. Class data for __cxxabiv1::__function_type_info 2206 2207 The virtual table for the __cxxabiv1::__function_type_info 2208 class is described by Table 7-19 2209 2210 Table 7-19. Primary vtable for 2211 __cxxabiv1::__function_type_info 2212 Base Offset 0 2213 Virtual Base Offset 0 2214 RTTI typeinfo for __cxxabiv1::__function_type_info 2215 vfunc[0]: 2216 __cxxabiv1::__function_type_info::~__function_type_info() 2217 vfunc[1]: 2218 __cxxabiv1::__function_type_info::~__function_type_info() 2219 vfunc[2]: type_info::__is_pointer_p() const 2220 vfunc[3]: __cxxabiv1::__function_type_info::__is_function_p() 2221 const 2222 vfunc[4]: type_info::__do_catch(type_info const*, void**, 2223 unsigned int) const 2224 vfunc[5]: type_info::__do_upcast(__cxxabiv1::__class_type_info 2225 const*, void**) const 2226 2227 The Run Time Type Information for the 2228 __cxxabiv1::__function_type_info class is described by Table 2229 7-20 2230 2231 Table 7-20. typeinfo for __cxxabiv1::__function_type_info 2232 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2233 Name typeinfo name for __cxxabiv1::__function_type_info 2234 _________________________________________________________ 2235 2236 7.1.38.2. Interfaces for Class __cxxabiv1::__function_type_info 2237 2238 No external methods are defined for libstdcxx - Class 2239 __cxxabiv1::__function_type_info 2240 _________________________________________________________ 2241 2242 7.1.39. Class __cxxabiv1::__si_class_type_info 2243 _________________________________________________________ 2244 2245 7.1.39.1. Class data for __cxxabiv1::__si_class_type_info 2246 2247 The virtual table for the __cxxabiv1::__si_class_type_info 2248 class is described by Table 7-21 2249 2250 Table 7-21. Primary vtable for 2251 __cxxabiv1::__si_class_type_info 2252 Base Offset 0 2253 Virtual Base Offset 0 2254 RTTI typeinfo for __cxxabiv1::__si_class_type_info 2255 vfunc[0]: 2256 __cxxabiv1::__si_class_type_info::~__si_class_type_info() 2257 vfunc[1]: 2258 __cxxabiv1::__si_class_type_info::~__si_class_type_info() 2259 vfunc[2]: type_info::__is_pointer_p() const 2260 vfunc[3]: type_info::__is_function_p() const 2261 vfunc[4]: __cxxabiv1::__class_type_info::__do_catch(type_info 2262 const*, void**, unsigned int) const 2263 vfunc[5]: 2264 __cxxabiv1::__class_type_info::__do_upcast(__cxxabiv1::__class 2265 _type_info const*, void**) const 2266 vfunc[6]: 2267 __cxxabiv1::__si_class_type_info::__do_upcast(__cxxabiv1::__cl 2268 ass_type_info const*, void const*, 2269 __cxxabiv1::__class_type_info::__upcast_result&) const 2270 vfunc[7]: __cxxabiv1::__si_class_type_info::__do_dyncast(long, 2271 __cxxabiv1::__class_type_info::__sub_kind, 2272 __cxxabiv1::__class_type_info const*, void const*, 2273 __cxxabiv1::__class_type_info const*, void const*, 2274 __cxxabiv1::__class_type_info::__dyncast_result&) const 2275 vfunc[8]: 2276 __cxxabiv1::__si_class_type_info::__do_find_public_src(long, 2277 void const*, __cxxabiv1::__class_type_info const*, void 2278 const*) const 2279 2280 The Run Time Type Information for the 2281 __cxxabiv1::__si_class_type_info class is described by Table 2282 7-22 2283 2284 Table 7-22. typeinfo for __cxxabiv1::__si_class_type_info 2285 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2286 Name typeinfo name for __cxxabiv1::__si_class_type_info 2287 _________________________________________________________ 2288 2289 7.1.39.2. Interfaces for Class __cxxabiv1::__si_class_type_info 2290 2291 An LSB conforming implementation shall provide the 2292 architecture specific methods for Class 2293 __cxxabiv1::__si_class_type_info specified in Table 7-23, with 2294 the full mandatory functionality as described in the 2295 referenced underlying specification. 2296 2297 Table 7-23. libstdcxx - Class __cxxabiv1::__si_class_type_info 2298 Function Interfaces 2299 __cxxabiv1::__si_class_type_info::__do_dyncast(long, 2300 __cxxabiv1::__class_type_info::__sub_kind, 2301 __cxxabiv1::__class_type_info const*, void const*, 2302 __cxxabiv1::__class_type_info const*, void const*, 2303 __cxxabiv1::__class_type_info::__dyncast_result&) 2304 const(CXXABI_1.3) [1] 2305 __cxxabiv1::__si_class_type_info::__do_find_public_src(long, 2306 void const*, __cxxabiv1::__class_type_info const*, void 2307 const*) const(CXXABI_1.3) [1] 2308 2309 Referenced Specification(s) 2310 2311 [1]. Itanium C++ ABI 2312 _________________________________________________________ 2313 2314 7.1.40. Class __cxxabiv1::__vmi_class_type_info 2315 _________________________________________________________ 2316 2317 7.1.40.1. Class data for __cxxabiv1::__vmi_class_type_info 2318 2319 The virtual table for the __cxxabiv1::__vmi_class_type_info 2320 class is described by Table 7-24 2321 2322 Table 7-24. Primary vtable for 2323 __cxxabiv1::__vmi_class_type_info 2324 Base Offset 0 2325 Virtual Base Offset 0 2326 RTTI typeinfo for __cxxabiv1::__vmi_class_type_info 2327 vfunc[0]: 2328 __cxxabiv1::__vmi_class_type_info::~__vmi_class_type_info() 2329 vfunc[1]: 2330 __cxxabiv1::__vmi_class_type_info::~__vmi_class_type_info() 2331 vfunc[2]: type_info::__is_pointer_p() const 2332 vfunc[3]: type_info::__is_function_p() const 2333 vfunc[4]: __cxxabiv1::__class_type_info::__do_catch(type_info 2334 const*, void**, unsigned int) const 2335 vfunc[5]: 2336 __cxxabiv1::__class_type_info::__do_upcast(__cxxabiv1::__class 2337 _type_info const*, void**) const 2338 vfunc[6]: 2339 __cxxabiv1::__vmi_class_type_info::__do_upcast(__cxxabiv1::__c 2340 lass_type_info const*, void const*, 2341 __cxxabiv1::__class_type_info::__upcast_result&) const 2342 vfunc[7]: 2343 __cxxabiv1::__vmi_class_type_info::__do_dyncast(long, 2344 __cxxabiv1::__class_type_info::__sub_kind, 2345 __cxxabiv1::__class_type_info const*, void const*, 2346 __cxxabiv1::__class_type_info const*, void const*, 2347 __cxxabiv1::__class_type_info::__dyncast_result&) const 2348 vfunc[8]: 2349 __cxxabiv1::__vmi_class_type_info::__do_find_public_src(long, 2350 void const*, __cxxabiv1::__class_type_info const*, void 2351 const*) const 2352 2353 The Run Time Type Information for the 2354 __cxxabiv1::__vmi_class_type_info class is described by Table 2355 7-25 2356 2357 Table 7-25. typeinfo for __cxxabiv1::__vmi_class_type_info 2358 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2359 Name typeinfo name for __cxxabiv1::__vmi_class_type_info 2360 _________________________________________________________ 2361 2362 7.1.40.2. Interfaces for Class __cxxabiv1::__vmi_class_type_info 2363 2364 An LSB conforming implementation shall provide the 2365 architecture specific methods for Class 2366 __cxxabiv1::__vmi_class_type_info specified in Table 7-26, 2367 with the full mandatory functionality as described in the 2368 referenced underlying specification. 2369 2370 Table 7-26. libstdcxx - Class 2371 __cxxabiv1::__vmi_class_type_info Function Interfaces 2372 __cxxabiv1::__vmi_class_type_info::__do_dyncast(long, 2373 __cxxabiv1::__class_type_info::__sub_kind, 2374 __cxxabiv1::__class_type_info const*, void const*, 2375 __cxxabiv1::__class_type_info const*, void const*, 2376 __cxxabiv1::__class_type_info::__dyncast_result&) 2377 const(CXXABI_1.3) [1] 2378 __cxxabiv1::__vmi_class_type_info::__do_find_public_src(long, 2379 void const*, __cxxabiv1::__class_type_info const*, void 2380 const*) const(CXXABI_1.3) [1] 2381 2382 Referenced Specification(s) 2383 2384 [1]. Itanium C++ ABI 2385 _________________________________________________________ 2386 2387 7.1.41. Class __cxxabiv1::__fundamental_type_info 2388 _________________________________________________________ 2389 2390 7.1.41.1. Class data for __cxxabiv1::__fundamental_type_info 2391 2392 The virtual table for the __cxxabiv1::__fundamental_type_info 2393 class is described by Table 7-27 2394 2395 Table 7-27. Primary vtable for 2396 __cxxabiv1::__fundamental_type_info 2397 Base Offset 0 2398 Virtual Base Offset 0 2399 RTTI typeinfo for __cxxabiv1::__fundamental_type_info 2400 vfunc[0]: 2401 __cxxabiv1::__fundamental_type_info::~__fundamental_type_info( 2402 ) 2403 vfunc[1]: 2404 __cxxabiv1::__fundamental_type_info::~__fundamental_type_info( 2405 ) 2406 vfunc[2]: type_info::__is_pointer_p() const 2407 vfunc[3]: type_info::__is_function_p() const 2408 vfunc[4]: type_info::__do_catch(type_info const*, void**, 2409 unsigned int) const 2410 vfunc[5]: type_info::__do_upcast(__cxxabiv1::__class_type_info 2411 const*, void**) const 2412 2413 The Run Time Type Information for the 2414 __cxxabiv1::__fundamental_type_info class is described by 2415 Table 7-28 2416 2417 Table 7-28. typeinfo for __cxxabiv1::__fundamental_type_info 2418 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2419 Name typeinfo name for __cxxabiv1::__fundamental_type_info 2420 _________________________________________________________ 2421 2422 7.1.41.2. Interfaces for Class __cxxabiv1::__fundamental_type_info 2423 2424 No external methods are defined for libstdcxx - Class 2425 __cxxabiv1::__fundamental_type_info 2426 _________________________________________________________ 2427 2428 7.1.42. Class __cxxabiv1::__pointer_to_member_type_info 2429 _________________________________________________________ 2430 2431 7.1.42.1. Class data for __cxxabiv1::__pointer_to_member_type_info 2432 2433 The virtual table for the 2434 __cxxabiv1::__pointer_to_member_type_info class is described 2435 by Table 7-29 2436 2437 Table 7-29. Primary vtable for 2438 __cxxabiv1::__pointer_to_member_type_info 2439 Base Offset 0 2440 Virtual Base Offset 0 2441 RTTI typeinfo for __cxxabiv1::__pointer_to_member_type_info 2442 vfunc[0]: 2443 __cxxabiv1::__pointer_to_member_type_info::~__pointer_to_membe 2444 r_type_info() 2445 vfunc[1]: 2446 __cxxabiv1::__pointer_to_member_type_info::~__pointer_to_membe 2447 r_type_info() 2448 vfunc[2]: type_info::__is_pointer_p() const 2449 vfunc[3]: type_info::__is_function_p() const 2450 vfunc[4]: __cxxabiv1::__pbase_type_info::__do_catch(type_info 2451 const*, void**, unsigned int) const 2452 vfunc[5]: type_info::__do_upcast(__cxxabiv1::__class_type_info 2453 const*, void**) const 2454 vfunc[6]: 2455 __cxxabiv1::__pointer_to_member_type_info::__pointer_catch(__c 2456 xxabiv1::__pbase_type_info const*, void**, unsigned int) const 2457 2458 The Run Time Type Information for the 2459 __cxxabiv1::__pointer_to_member_type_info class is described 2460 by Table 7-30 2461 2462 Table 7-30. typeinfo for 2463 __cxxabiv1::__pointer_to_member_type_info 2464 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2465 Name typeinfo name for 2466 __cxxabiv1::__pointer_to_member_type_info 2467 _________________________________________________________ 2468 2469 7.1.42.2. Interfaces for Class 2470 __cxxabiv1::__pointer_to_member_type_info 2471 2472 No external methods are defined for libstdcxx - Class 2473 __cxxabiv1::__pointer_to_member_type_info 2474 _________________________________________________________ 2475 2476 7.1.43. Class __gnu_cxx::stdio_filebuf > 2477 _________________________________________________________ 2478 2479 7.1.43.1. Class data for __gnu_cxx::stdio_filebuf > 2481 2482 The virtual table for the __gnu_cxx::stdio_filebuf > class is described by Table 7-31 2484 2485 Table 7-31. Primary vtable for 2486 __gnu_cxx::stdio_sync_filebuf > 2487 Base Offset 0 2488 Virtual Base Offset 0 2489 RTTI typeinfo for __gnu_cxx::stdio_sync_filebuf > 2491 vfunc[0]: Unspecified 2492 vfunc[1]: Unspecified 2493 vfunc[2]: basic_streambuf 2494 >::imbue(locale const&) 2495 vfunc[3]: basic_streambuf 2496 >::setbuf(char*, long) 2497 vfunc[4]: basic_filebuf 2498 >::seekoff(long, _Ios_Seekdir, _Ios_Openmode) 2499 vfunc[5]: basic_filebuf 2500 >::seekpos(fpos<__mbstate_t>, _Ios_Openmode) 2501 vfunc[6]: basic_filebuf >::sync() 2502 vfunc[7]: basic_streambuf 2503 >::showmanyc() 2504 vfunc[8]: basic_filebuf 2505 >::xsgetn(char*, long) 2506 vfunc[9]: basic_filebuf >::underflow() 2507 vfunc[10]: basic_streambuf >::uflow() 2508 vfunc[11]: basic_filebuf 2509 >::pbackfail(int) 2510 vfunc[12]: basic_filebuf 2511 >::xsputn(char const*, long) 2512 vfunc[13]: basic_filebuf 2513 >::overflow(int) 2514 _________________________________________________________ 2515 2516 7.1.43.2. Interfaces for Class __gnu_cxx::stdio_filebuf > 2518 2519 No external methods are defined for libstdcxx - Class 2520 __gnu_cxx::stdio_filebuf > 2521 _________________________________________________________ 2522 2523 7.1.44. Class __gnu_cxx::stdio_filebuf 2524 > 2525 _________________________________________________________ 2526 2527 7.1.44.1. Class data for __gnu_cxx::stdio_filebuf > 2529 2530 The virtual table for the __gnu_cxx::stdio_filebuf > class is described by Table 7-32 2532 2533 Table 7-32. Primary vtable for 2534 __gnu_cxx::stdio_sync_filebuf > 2535 Base Offset 0 2536 Virtual Base Offset 0 2537 RTTI typeinfo for __gnu_cxx::stdio_sync_filebuf > 2539 vfunc[0]: Unspecified 2540 vfunc[1]: Unspecified 2541 vfunc[2]: basic_streambuf 2542 >::imbue(locale const&) 2543 vfunc[3]: basic_streambuf 2544 >::setbuf(wchar_t*, long) 2545 vfunc[4]: basic_filebuf 2546 >::setbuf(wchar_t*, long) 2547 vfunc[5]: basic_filebuf 2548 >::seekpos(fpos<__mbstate_t>, _Ios_Openmode) 2549 vfunc[6]: basic_filebuf 2550 >::sync() 2551 vfunc[7]: basic_streambuf 2552 >::showmanyc() 2553 vfunc[8]: basic_filebuf 2554 >::xsgetn(wchar_t*, long) 2555 vfunc[9]: basic_filebuf 2556 >::underflow() 2557 vfunc[10]: basic_streambuf >::uflow() 2558 vfunc[11]: basic_filebuf 2559 >::pbackfail(unsigned int) 2560 vfunc[12]: basic_streambuf 2561 >::xsputn(wchar_t const*, long) 2562 vfunc[13]: basic_filebuf 2563 >::overflow(unsigned int) 2564 _________________________________________________________ 2565 2566 7.1.44.2. Interfaces for Class __gnu_cxx::stdio_filebuf > 2568 2569 No external methods are defined for libstdcxx - Class 2570 __gnu_cxx::stdio_filebuf > 2571 _________________________________________________________ 2572 2573 7.1.45. Class locale::facet 2574 _________________________________________________________ 2575 2576 7.1.45.1. Class data for locale::facet 2577 2578 The virtual table for the std::locale::facet class is 2579 described by Table 7-33 2580 2581 Table 7-33. Primary vtable for locale::facet 2582 Base Offset 0 2583 Virtual Base Offset 0 2584 RTTI typeinfo for locale::facet 2585 vfunc[0]: locale::facet::~facet() 2586 vfunc[1]: locale::facet::~facet() 2587 2588 The Run Time Type Information for the std::locale::facet class 2589 is described by Table 7-34 2590 2591 Table 7-34. typeinfo for locale::facet 2592 Base Vtable vtable for __cxxabiv1::__class_type_info 2593 Name typeinfo name for locale::facet 2594 _________________________________________________________ 2595 2596 7.1.45.2. Interfaces for Class locale::facet 2597 2598 No external methods are defined for libstdcxx - Class 2599 std::locale::facet 2600 _________________________________________________________ 2601 2602 7.1.46. Class ios_base::failure 2603 _________________________________________________________ 2604 2605 7.1.46.1. Class data for ios_base::failure 2606 2607 The virtual table for the std::ios_base::failure class is 2608 described by Table 7-35 2609 2610 Table 7-35. Primary vtable for ios_base::failure 2611 Base Offset 0 2612 Virtual Base Offset 0 2613 RTTI typeinfo for ios_base::failure 2614 vfunc[0]: ios_base::failure::~failure() 2615 vfunc[1]: ios_base::failure::~failure() 2616 vfunc[2]: ios_base::failure::what() const 2617 2618 The Run Time Type Information for the std::ios_base::failure 2619 class is described by Table 7-36 2620 2621 Table 7-36. typeinfo for ios_base::failure 2622 Base Vtable vtable for __cxxabiv1::__si_class_type_info 2623 Name typeinfo name for ios_base::failure 2624 _________________________________________________________ 2625 2626 7.1.46.2. Interfaces for Class ios_base::failure 2627 2628 No external methods are defined for libstdcxx - Class 2629 std::ios_base::failure 2630 _________________________________________________________ 2631 2632 7.1.47. Class _ZSdE 2633 _________________________________________________________ 2634 2635 7.1.47.1. Class data for basic_iostream > 2636 2637 The virtual table for the std::basic_iostream > class is described by Table 7-37 2639 2640 Table 7-37. Primary vtable for basic_iostream > 2642 Base Offset 0 2643 Virtual Base Offset 24 2644 RTTI typeinfo for basic_iostream > 2645 vfunc[0]: basic_iostream 2646 >::~basic_iostream() 2647 vfunc[1]: basic_iostream 2648 >::~basic_iostream() 2649 2650 Table 7-38. Secondary vtable for basic_iostream > 2652 Base Offset -16 2653 Virtual Base Offset 8 2654 RTTI typeinfo for basic_iostream > 2655 vfunc[0]: non-virtual thunk to basic_iostream >::~basic_iostream() 2657 vfunc[1]: non-virtual thunk to basic_iostream >::~basic_iostream() 2659 2660 Table 7-39. Secondary vtable for basic_iostream > 2662 Base Offset -24 2663 Virtual Base Offset -24 2664 RTTI typeinfo for basic_iostream > 2665 vfunc[0]: virtual thunk to basic_iostream >::~basic_iostream() 2667 vfunc[1]: virtual thunk to basic_iostream >::~basic_iostream() 2669 2670 The VTT for the std::basic_iostream > class is described by Table 7-40 2672 2673 Table 7-40. VTT for basic_iostream > 2674 VTT Name _ZTTSd 2675 Number of Entries 7 2676 _________________________________________________________ 2677 2678 7.1.47.2. Interfaces for Class _ZSdE 2679 2680 An LSB conforming implementation shall provide the 2681 architecture specific methods for Class _ZSdE specified in 2682 Table 7-41, with the full mandatory functionality as described 2683 in the referenced underlying specification. 2684 2685 Table 7-41. libstdcxx - Class _ZSdE Function Interfaces 2686 non-virtual thunk to basic_iostream 2687 >::~basic_iostream()(GLIBCXX_3.4) [1] 2688 non-virtual thunk to basic_iostream 2689 >::~basic_iostream()(GLIBCXX_3.4) [1] 2690 virtual thunk to basic_iostream 2691 >::~basic_iostream()(GLIBCXX_3.4) [1] 2692 virtual thunk to basic_iostream 2693 >::~basic_iostream()(GLIBCXX_3.4) [1] 2694 2695 Referenced Specification(s) 2696 2697 [1]. Itanium C++ ABI 2698 _________________________________________________________ 2699 2700 7.1.48. Class _ZSiE 2701 _________________________________________________________ 2702 2703 7.1.48.1. Class data for basic_istream > 2704 2705 The virtual table for the std::basic_istream > class is described by Table 7-42 2707 2708 Table 7-42. Primary vtable for basic_istream > 2710 Base Offset 0 2711 Virtual Base Offset 16 2712 RTTI typeinfo for basic_istream > 2713 vfunc[0]: basic_istream 2714 >::~basic_istream() 2715 vfunc[1]: basic_istream 2716 >::~basic_istream() 2717 2718 Table 7-43. Secondary vtable for basic_istream > 2720 Base Offset -16 2721 Virtual Base Offset -16 2722 RTTI typeinfo for basic_istream > 2723 vfunc[0]: virtual thunk to basic_istream >::~basic_istream() 2725 vfunc[1]: virtual thunk to basic_istream >::~basic_istream() 2727 2728 The VTT for the std::basic_istream > class is described by Table 7-44 2730 2731 Table 7-44. VTT for basic_istream > 2732 VTT Name _ZTTSi 2733 Number of Entries 2 2734 _________________________________________________________ 2735 2736 7.1.48.2. Interfaces for Class _ZSiE 2737 2738 An LSB conforming implementation shall provide the 2739 architecture specific methods for Class _ZSiE specified in 2740 Table 7-45, with the full mandatory functionality as described 2741 in the referenced underlying specification. 2742 2743 Table 7-45. libstdcxx - Class _ZSiE Function Interfaces 2744 basic_istream >::get(char*, 2745 long)(GLIBCXX_3.4) [1] 2746 basic_istream >::get(char*, long, 2747 char)(GLIBCXX_3.4) [1] 2748 basic_istream >::read(char*, 2749 long)(GLIBCXX_3.4) [1] 2750 basic_istream >::seekg(long, 2751 _Ios_Seekdir)(GLIBCXX_3.4) [1] 2752 basic_istream >::ignore(long, 2753 int)(GLIBCXX_3.4) [1] 2754 basic_istream >::getline(char*, 2755 long)(GLIBCXX_3.4) [1] 2756 basic_istream >::getline(char*, long, 2757 char)(GLIBCXX_3.4) [1] 2758 basic_istream >::readsome(char*, 2759 long)(GLIBCXX_3.4) [1] 2760 virtual thunk to basic_istream 2761 >::~basic_istream()(GLIBCXX_3.4) [2] 2762 virtual thunk to basic_istream 2763 >::~basic_istream()(GLIBCXX_3.4) [2] 2764 2765 Referenced Specification(s) 2766 2767 [1]. ISO/IEC 14882: 2003 C++ Language 2768 2769 [2]. Itanium C++ ABI 2770 _________________________________________________________ 2771 2772 7.1.49. Class _ZSoE 2773 _________________________________________________________ 2774 2775 7.1.49.1. Class data for basic_ostream > 2776 2777 The virtual table for the std::basic_ostream > class is described by Table 7-46 2779 2780 Table 7-46. Primary vtable for basic_ostream > 2782 Base Offset 0 2783 Virtual Base Offset 8 2784 RTTI typeinfo for basic_ostream > 2785 vfunc[0]: basic_ostream 2786 >::~basic_ostream() 2787 vfunc[1]: basic_ostream 2788 >::~basic_ostream() 2789 2790 Table 7-47. Secondary vtable for basic_ostream > 2792 Base Offset -8 2793 Virtual Base Offset -8 2794 RTTI typeinfo for basic_ostream > 2795 vfunc[0]: virtual thunk to basic_ostream >::~basic_ostream() 2797 vfunc[1]: virtual thunk to basic_ostream >::~basic_ostream() 2799 2800 The VTT for the std::basic_ostream > class is described by Table 7-48 2802 2803 Table 7-48. VTT for basic_ostream > 2804 VTT Name _ZTTSo 2805 Number of Entries 2 2806 _________________________________________________________ 2807 2808 7.1.49.2. Interfaces for Class _ZSoE 2809 2810 An LSB conforming implementation shall provide the 2811 architecture specific methods for Class _ZSoE specified in 281