summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@acm.org>2022-03-08 13:00:35 -0800
committerNathan Sidwell <nathan@acm.org>2022-05-17 11:10:03 -0700
commit451894cadcf1210883ceefb2d69a0ed2d6a8cd8b (patch)
tree1d02872b057666ed99f2fbd5d5abb1bcefb2293b /include
parentPR105169 Fix references to discarded sections (diff)
downloadgcc-451894cadcf1210883ceefb2d69a0ed2d6a8cd8b.tar.gz
gcc-451894cadcf1210883ceefb2d69a0ed2d6a8cd8b.tar.bz2
gcc-451894cadcf1210883ceefb2d69a0ed2d6a8cd8b.tar.xz
demangler: Structured Bindings
C++ Structured bindings have a mangling that has yet to be formally documented. However, it's been around for a while and shows up for module support. include/ * demangle.h (enum demangle_component_type): Add DEMANGLE_COMPONENT_STRUCTURED_BINDING. libiberty/ * cp-demangle.c (d_make_comp): Adjust. (d_unqualified_name): Add 'DC' support. (d_count_template_scopes): Adjust. (d_print_comp_inner): Add structured binding. * testsuite/demangle-expected: Add testcases.
Diffstat (limited to 'include')
-rw-r--r--include/demangle.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/include/demangle.h b/include/demangle.h
index 402308f769f..44a27374d4f 100644
--- a/include/demangle.h
+++ b/include/demangle.h
@@ -449,7 +449,9 @@ enum demangle_component_type
449 /* A cloned function. */ 449 /* A cloned function. */
450 DEMANGLE_COMPONENT_CLONE, 450 DEMANGLE_COMPONENT_CLONE,
451 DEMANGLE_COMPONENT_NOEXCEPT, 451 DEMANGLE_COMPONENT_NOEXCEPT,
452 DEMANGLE_COMPONENT_THROW_SPEC 452 DEMANGLE_COMPONENT_THROW_SPEC,
453
454 DEMANGLE_COMPONENT_STRUCTURED_BINDING
453}; 455};
454 456
455/* Types which are only used internally. */ 457/* Types which are only used internally. */