more on protected ctors+directors
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@6772 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
707afe1139
commit
ffa25c871d
2 changed files with 3 additions and 2 deletions
|
|
@ -97,6 +97,7 @@ void cparse_normalize_void(Node *n) {
|
||||||
int need_protected(Node* n, int dirprot_mode)
|
int need_protected(Node* n, int dirprot_mode)
|
||||||
{
|
{
|
||||||
/* First, 'n' looks like a function */
|
/* First, 'n' looks like a function */
|
||||||
|
if (!dirprot_mode) return 0;
|
||||||
if ((Strcmp(nodeType(n),"cdecl") == 0) &&
|
if ((Strcmp(nodeType(n),"cdecl") == 0) &&
|
||||||
SwigType_isfunction(Getattr(n,"decl"))) {
|
SwigType_isfunction(Getattr(n,"decl"))) {
|
||||||
String *storage = Getattr(n,"storage");
|
String *storage = Getattr(n,"storage");
|
||||||
|
|
|
||||||
|
|
@ -535,6 +535,7 @@ symbol_head(Node *n)
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
Node *
|
Node *
|
||||||
Swig_symbol_add(String_or_char *symname, Node *n) {
|
Swig_symbol_add(String_or_char *symname, Node *n) {
|
||||||
Hash *c, *cn, *cl = 0;
|
Hash *c, *cn, *cl = 0;
|
||||||
|
|
@ -721,7 +722,7 @@ Swig_symbol_add(String_or_char *symname, Node *n) {
|
||||||
assert(!Getattr(n,"sym:overname"));
|
assert(!Getattr(n,"sym:overname"));
|
||||||
Setattr(n,"sym:overname", NewStringf("__SWIG_%d", pn));
|
Setattr(n,"sym:overname", NewStringf("__SWIG_%d", pn));
|
||||||
/*Printf(stdout,"%s %s %s\n", symname, Getattr(n,"decl"), Getattr(n,"sym:overname")); */
|
/*Printf(stdout,"%s %s %s\n", symname, Getattr(n,"decl"), Getattr(n,"sym:overname")); */
|
||||||
if (Getattr(n,"access")) {
|
if (Getattr(n,"access") && !Getattr(n,"feature:director")) {
|
||||||
/* add the protected/private members at the top of the overload list*/
|
/* add the protected/private members at the top of the overload list*/
|
||||||
Node *hl = symbol_head(cl);
|
Node *hl = symbol_head(cl);
|
||||||
Setattr(n,"sym:nextSibling",hl);
|
Setattr(n,"sym:nextSibling",hl);
|
||||||
|
|
@ -732,7 +733,6 @@ Swig_symbol_add(String_or_char *symname, Node *n) {
|
||||||
}
|
}
|
||||||
Setattr(cl,"sym:overloaded",c);
|
Setattr(cl,"sym:overloaded",c);
|
||||||
Setattr(n,"sym:overloaded",c);
|
Setattr(n,"sym:overloaded",c);
|
||||||
|
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue