[stacktrace.syn] # 19 Diagnostics library [[diagnostics]](./#diagnostics) ## 19.6 Stacktrace [[stacktrace]](stacktrace#syn) ### 19.6.2 Header synopsis [stacktrace.syn] [🔗](#header:%3cstacktrace%3e) #include // see [[compare.syn]](compare.syn "17.12.1 Header synopsis")namespace std {// [[stacktrace.entry]](stacktrace.entry "19.6.3 Class stacktrace_­entry"), class stacktrace_entryclass stacktrace_entry; // [[stacktrace.basic]](stacktrace.basic "19.6.4 Class template basic_­stacktrace"), class template basic_stacktracetemplateclass basic_stacktrace; // basic_stacktrace [*typedef-name*](dcl.typedef#nt:typedef-name "9.2.4 The typedef specifier [dcl.typedef]")*s*using stacktrace = basic_stacktrace>; // [[stacktrace.basic.nonmem]](stacktrace.basic.nonmem "19.6.4.6 Non-member functions"), non-member functionstemplatevoid swap(basic_stacktrace& a, basic_stacktrace& b)noexcept(noexcept(a.swap(b))); string to_string(const stacktrace_entry& f); template string to_string(const basic_stacktrace& st); ostream& operator<<(ostream& os, const stacktrace_entry& f); template ostream& operator<<(ostream& os, const basic_stacktrace& st); // [[stacktrace.format]](stacktrace.format "19.6.5 Formatting support"), formatting supporttemplate<> struct formatter; template struct formatter>; namespace pmr {using stacktrace = basic_stacktrace>; }// [[stacktrace.basic.hash]](stacktrace.basic.hash "19.6.6 Hash support"), hash supporttemplate struct hash; template<> struct hash; template struct hash>;}