/* Defs for interface to demanglers.
- Copyright (C) 1992-2022 Free Software Foundation, Inc.
+ Copyright (C) 1992-2023 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU Library General Public License
DEMANGLE_COMPONENT_NOEXCEPT,
DEMANGLE_COMPONENT_THROW_SPEC,
- DEMANGLE_COMPONENT_STRUCTURED_BINDING
+ DEMANGLE_COMPONENT_STRUCTURED_BINDING,
+
+ DEMANGLE_COMPONENT_MODULE_NAME,
+ DEMANGLE_COMPONENT_MODULE_PARTITION,
+ DEMANGLE_COMPONENT_MODULE_ENTITY,
+ DEMANGLE_COMPONENT_MODULE_INIT,
+
+ DEMANGLE_COMPONENT_TEMPLATE_HEAD,
+ DEMANGLE_COMPONENT_TEMPLATE_TYPE_PARM,
+ DEMANGLE_COMPONENT_TEMPLATE_NON_TYPE_PARM,
+ DEMANGLE_COMPONENT_TEMPLATE_TEMPLATE_PARM,
+ DEMANGLE_COMPONENT_TEMPLATE_PACK_PARM,
+
+ /* A builtin type with argument. This holds the builtin type
+ information. */
+ DEMANGLE_COMPONENT_EXTENDED_BUILTIN_TYPE
+
};
/* Types which are only used internally. */
const struct demangle_builtin_type_info *type;
} s_builtin;
+ /* For DEMANGLE_COMPONENT_EXTENDED_BUILTIN_TYPE. */
+ struct
+ {
+ /* Builtin type. */
+ const struct demangle_builtin_type_info *type;
+ short arg;
+ char suffix;
+ } s_extended_builtin;
+
/* For DEMANGLE_COMPONENT_SUB_STD. */
struct
{