#include "abort_message.h"
#define DEMANGLE_ASSERT(expr, msg) …
#include "demangle/DemangleConfig.h"
#include "demangle/ItaniumDemangle.h"
#include "__cxxabi_config.h"
#include <cctype>
#include <cstdio>
#include <cstdlib>
#include <cstring>
#include <exception>
#include <functional>
#include <numeric>
#include <string_view>
#include <utility>
usingnamespaceitanium_demangle;
constexpr const char *itanium_demangle::FloatData<float>::spec;
constexpr const char *itanium_demangle::FloatData<double>::spec;
constexpr const char *itanium_demangle::FloatData<long double>::spec;
const char *itanium_demangle::parse_discriminator(const char *first,
const char *last) { … }
#ifndef NDEBUG
namespace {
struct DumpVisitor { … };
}
void itanium_demangle::Node::dump() const { … }
#endif
namespace {
class BumpPointerAllocator { … };
class DefaultAllocator { … };
}
Demangler;
namespace {
enum : int { … };
}
namespace __cxxabiv1 {
extern "C" _LIBCXXABI_FUNC_VIS char *
__cxa_demangle(const char *MangledName, char *Buf, size_t *N, int *Status) { … }
}