+2016-01-27 Iain Buclaw <ibuclaw@gdcproject.org>
+
+ * d-demangle.c (dlang_call_convention): Handle extern Objective-C
+ function calling convention.
+ (dlang_call_convention_p): Likewise.
+ (dlang_type): Likewise.
+ * testsuite/d-demangle-expected: Add coverage tests.
+
2016-01-27 Iain Buclaw <ibuclaw@gdcproject.org>
* d-demangle.c (dlang_function_args): Append ',' for variadic functions
mangled++;
string_append (decl, "extern(C++) ");
break;
+ case 'Y': /* (Objective-C) */
+ mangled++;
+ string_append (decl, "extern(Objective-C) ");
+ break;
default:
return NULL;
}
switch (*mangled)
{
case 'F': case 'U': case 'W':
- case 'V': case 'R':
+ case 'V': case 'R': case 'Y':
mangled = dlang_function_type (decl, mangled);
string_append (decl, "function");
return mangled;
switch (*mangled)
{
case 'F': case 'U': case 'V':
- case 'W': case 'R':
+ case 'W': case 'R': case 'Y':
return 1;
default:
demangle.test(extern(C++) char() delegate)
#
--format=dlang
+_D8demangle4testFDYZaZv
+demangle.test(extern(Objective-C) char() delegate)
+#
+--format=dlang
_D8demangle4testFPFZaZv
demangle.test(char() function)
#
demangle.test(extern(C++) char() function)
#
--format=dlang
+_D8demangle4testFPYZaZv
+demangle.test(extern(Objective-C) char() function)
+#
+--format=dlang
_D8demangle4testFDFNaZaZv
demangle.test(char() pure delegate)
#