* testsuite/demangle-expected: Add two tests for anonymous
namespaces. * cplus-dem.c (gnu_special): Handle anonymous namespaces.
This commit is contained in:
parent
064002de2b
commit
d3e8500506
3 changed files with 33 additions and 1 deletions
|
@ -1,8 +1,13 @@
|
||||||
|
2000-09-14 Hans-Peter Nilsson <hp@axis.com>
|
||||||
|
|
||||||
|
* testsuite/demangle-expected: Add two tests for anonymous
|
||||||
|
namespaces.
|
||||||
|
* cplus-dem.c (gnu_special): Handle anonymous namespaces.
|
||||||
|
|
||||||
2000-09-10 Hans-Peter Nilsson <hp@axis.com>
|
2000-09-10 Hans-Peter Nilsson <hp@axis.com>
|
||||||
|
|
||||||
* testsuite/demangle-expected: Add four tests for type_info
|
* testsuite/demangle-expected: Add four tests for type_info
|
||||||
mangling.
|
mangling.
|
||||||
|
|
||||||
* cplus-dem.c (gnu_special): Use do_type, not demangle_fund_type,
|
* cplus-dem.c (gnu_special): Use do_type, not demangle_fund_type,
|
||||||
for a non-template non-qualified type_info function or node.
|
for a non-template non-qualified type_info function or node.
|
||||||
|
|
||||||
|
|
|
@ -2812,6 +2812,25 @@ gnu_special (work, mangled, declp)
|
||||||
success = 0;
|
success = 0;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (n > 10 && strncmp (*mangled, "_GLOBAL_", 8) == 0
|
||||||
|
&& (*mangled)[9] == 'N'
|
||||||
|
&& (*mangled)[8] == (*mangled)[10]
|
||||||
|
&& strchr (cplus_markers, (*mangled)[8]))
|
||||||
|
{
|
||||||
|
/* A member of the anonymous namespace. There's information
|
||||||
|
about what identifier or filename it was keyed to, but
|
||||||
|
it's just there to make the mangled name unique; we just
|
||||||
|
step over it. */
|
||||||
|
string_append (declp, "{anonymous}");
|
||||||
|
(*mangled) += n;
|
||||||
|
|
||||||
|
/* Now p points to the marker before the N, so we need to
|
||||||
|
update it to the first marker after what we consumed. */
|
||||||
|
p = strpbrk (*mangled, cplus_markers);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
string_appendn (declp, *mangled, n);
|
string_appendn (declp, *mangled, n);
|
||||||
(*mangled) += n;
|
(*mangled) += n;
|
||||||
}
|
}
|
||||||
|
|
|
@ -2558,3 +2558,11 @@ sockaddr * type_info node
|
||||||
--format=gnu
|
--format=gnu
|
||||||
__tiPQ25libcwt16option_event_tct1Z12burst_app_ct
|
__tiPQ25libcwt16option_event_tct1Z12burst_app_ct
|
||||||
libcw::option_event_tct<burst_app_ct> * type_info node
|
libcw::option_event_tct<burst_app_ct> * type_info node
|
||||||
|
#
|
||||||
|
--format=gnu
|
||||||
|
_27_GLOBAL_.N.__12burst_app_ct.app_instance
|
||||||
|
{anonymous}::app_instance
|
||||||
|
#
|
||||||
|
--format=gnu
|
||||||
|
_26_GLOBAL_\$N\$_tmp_n.iilg4Gya\$app_instance
|
||||||
|
{anonymous}::app_instance
|
||||||
|
|
Loading…
Reference in a new issue