On 25 April 2017 at 17:35, Jeff Law <l...@redhat.com> wrote: > On 04/15/2017 09:25 AM, Iain Buclaw wrote: >> >> This patch removes `dlang_parse_symbol', and replaces it with >> `dlang_parse_qualified' and `dlang_parse_mangle'. All callers have >> been updated to reflect as to whether we expect either a `MangleName' >> or `QualifiedName' to be the next token we encounter, which matches >> many clarifications that have been made in the specification. >> >> This also removes the special case of matching `V' - or encoded >> extern(Pascal) functions - and instead uses a more generic approach in >> that if a `CallConvention' symbol was encountered whilst consuming >> `QualifiedName', it*must* be followed by another `QualifiedName', >> otherwise we've reached the end of the matched rule. It still defeats >> the purpose of the aiming to having a context-free grammar, but at >> least it's a little less evil than before. >> >> --- >> >> >> 05-d-demangle-qualified-name.patch >> >> >> commit 8701a7e99b9146719881adcf019ecbebe836b755 >> Author: Iain Buclaw<ibuc...@gdcproject.org> >> Date: Sat Apr 15 11:54:27 2017 +0200 >> >> libiberty/ChangeLog: >> 2017-04-15 Iain Buclaw<ibuc...@gdcproject.org> >> * d-demangle.c (dlang_parse_symbol): Remove function. >> (dlang_parse_qualified): New function. >> (dlang_parse_mangle): New function. >> (dlang_type): Update to call dlang_parse_qualified. >> (dlang_identifier): Update to call either dlang_parse_qualified or >> dlang_parse_mangle. >> (dlang_type_modifier_p): Remove function. >> (dlang_call_convention_p): Don't allow for type modifiers in >> mangle. >> (dlang_template_args): Update to call dlang_identifier. >> (dlang_demangle): Update to call dlang_parse_mangle. >> * testsuite/d-demangle-expected: Add tests. > > OK for the trunk. > > What's the state of patch 4/7? I got the distinct impression you wanted to > update & repost that patch. > Jeff
Thanks, yes, apologies. I got rather side-tracked, I'll submit it now. -- Iain