7
7
* Expands a template into a specialized version.
8
8
* ----------------------------------------------------------------------------- */
10
char cvsroot_templ_c[] = "$Id: templ.c 10540 2008-06-21 15:23:02Z wsfulton $";
10
char cvsroot_templ_c[] = "$Id: templ.c 11097 2009-01-30 10:27:37Z bhy $";
13
13
#include "cparse.h"
167
167
add_parms(Getattr(n, "throws"), cpatchlist, typelist);
168
168
} else if (Equal(nodeType, "destructor")) {
169
169
String *name = Getattr(n, "name");
170
if (name && strchr(Char(name), '<')) {
171
Append(patchlist, Getattr(n, "name"));
173
Append(name, templateargs);
171
if (strchr(Char(name), '<'))
172
Append(patchlist, Getattr(n, "name"));
174
Append(name, templateargs);
175
176
name = Getattr(n, "sym:name");
176
if (name && strchr(Char(name), '<')) {
177
String *sn = Copy(tname);
178
Setattr(n, "sym:name", sn);
181
Replace(name, tname, rname, DOH_REPLACE_ANY);
178
if (strchr(Char(name), '<')) {
179
String *sn = Copy(tname);
180
Setattr(n, "sym:name", sn);
183
Replace(name, tname, rname, DOH_REPLACE_ANY);
183
186
/* Setattr(n,"sym:name",name); */
184
187
Append(cpatchlist, Getattr(n, "code"));