Commit 6c8dbbfe by Ben L Committed by Jeff Law

d-demangle.c (dlang_parse_assocarray): Correctly handle error result.

     * d-demangle.c (dlang_parse_assocarray): Correctly handle error result.
     * testsuite/d-demangle-expected: Add testcase.

From-SVN: r270700
parent f181b8e7
2019-04-30 Ben L <bobsayshilol@live.co.uk> 2019-04-30 Ben L <bobsayshilol@live.co.uk>
* d-demangle.c (dlang_parse_assocarray): Correctly handle error result.
* testsuite/d-demangle-expected: Add testcase.
* d-demangle.c (dlang_parse_tuple): Correctly handle error result. * d-demangle.c (dlang_parse_tuple): Correctly handle error result.
* testsuite/d-demangle-expected: Add testcase. * testsuite/d-demangle-expected: Add testcase.
......
...@@ -1217,8 +1217,13 @@ dlang_parse_assocarray (string *decl, const char *mangled) ...@@ -1217,8 +1217,13 @@ dlang_parse_assocarray (string *decl, const char *mangled)
while (elements--) while (elements--)
{ {
mangled = dlang_value (decl, mangled, NULL, '\0'); mangled = dlang_value (decl, mangled, NULL, '\0');
if (mangled == NULL)
return NULL;
string_append (decl, ":"); string_append (decl, ":");
mangled = dlang_value (decl, mangled, NULL, '\0'); mangled = dlang_value (decl, mangled, NULL, '\0');
if (mangled == NULL)
return NULL;
if (elements != 0) if (elements != 0)
string_append (decl, ", "); string_append (decl, ", ");
......
...@@ -1322,3 +1322,7 @@ _D7__T2fnVlS8S588888888888S6S5 ...@@ -1322,3 +1322,7 @@ _D7__T2fnVlS8S588888888888S6S5
--format=dlang --format=dlang
_D1_B699999999961* _D1_B699999999961*
_D1_B699999999961* _D1_B699999999961*
# Could crash
--format=dlang
_D5__T1fVHacA6666666666_
_D5__T1fVHacA6666666666_
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment