From: Marcelo M. <mar...@us...> - 2005-11-28 17:33:17
|
Update of /cvsroot/swig/SWIG/Source/Swig In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1681/Source/Swig Modified Files: cwrap.c error.c include.c misc.c naming.c parms.c scanner.c stype.c symbol.c tree.c typemap.c typeobj.c typesys.c wrapfunc.c Log Message: add NewStringEmpty, use more StringEuqual and less Strcmp Index: parms.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/parms.c,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** parms.c 27 Nov 2005 02:58:24 -0000 1.15 --- parms.c 28 Nov 2005 17:32:56 -0000 1.16 *************** *** 193,197 **** String *ParmList_str(ParmList *p) { ! String *out = NewString(""); while(p) { String *pstr = SwigType_str(Getattr(p,"type"), Getattr(p,"name")); --- 193,197 ---- String *ParmList_str(ParmList *p) { ! String *out = NewStringEmpty(); while(p) { String *pstr = SwigType_str(Getattr(p,"type"), Getattr(p,"name")); *************** *** 213,217 **** String *ParmList_str_defaultargs(ParmList *p) { ! String *out = NewString(""); while(p) { String *value = Getattr(p,"value"); --- 213,217 ---- String *ParmList_str_defaultargs(ParmList *p) { ! String *out = NewStringEmpty(); while(p) { String *value = Getattr(p,"value"); *************** *** 237,241 **** String *ParmList_protostr(ParmList *p) { ! String *out = NewString(""); while(p) { if (Getattr(p,"hidden")) { --- 237,241 ---- String *ParmList_protostr(ParmList *p) { ! String *out = NewStringEmpty(); while(p) { if (Getattr(p,"hidden")) { Index: typeobj.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/typeobj.c,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -d -r1.12 -r1.13 *** typeobj.c 28 Nov 2005 02:44:12 -0000 1.12 --- typeobj.c 28 Nov 2005 17:32:56 -0000 1.13 *************** *** 565,569 **** String *ta; assert(SwigType_isarray(t)); ! ta = NewString(""); while (SwigType_isarray(t)) { SwigType *td = SwigType_pop(t); --- 565,569 ---- String *ta; assert(SwigType_isarray(t)); ! ta = NewStringEmpty(); while (SwigType_isarray(t)) { SwigType *td = SwigType_pop(t); *************** *** 826,830 **** c++; } ! return NewString(""); } --- 826,830 ---- c++; } ! return NewStringEmpty(); } *************** *** 970,974 **** } } ! return NewString(""); } --- 970,974 ---- } } ! return NewStringEmpty(); } *************** *** 991,995 **** l = SwigType_split(t); ! r = NewString(""); for (ei = First(l);ei.item; ei = Next(ei)) { --- 991,995 ---- l = SwigType_split(t); ! r = NewStringEmpty(); for (ei = First(l);ei.item; ei = Next(ei)) { Index: include.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/include.c,v retrieving revision 1.20 retrieving revision 1.21 diff -C2 -d -r1.20 -r1.21 *** include.c 17 Sep 2004 05:55:43 -0000 1.20 --- include.c 28 Nov 2005 17:32:56 -0000 1.21 *************** *** 143,147 **** slist = NewList(); assert(slist); ! filename = NewString(""); assert(filename); #ifdef MACSWIG --- 143,147 ---- slist = NewList(); assert(slist); ! filename = NewStringEmpty(); assert(filename); #ifdef MACSWIG *************** *** 160,164 **** for (i = 0; i < Len(directories); i++) { dirname = Getitem(directories,i); ! filename = NewString(""); assert(filename); Printf(filename, "%s%s", dirname, SWIG_FILE_DELIMETER); --- 160,164 ---- for (i = 0; i < Len(directories); i++) { dirname = Getitem(directories,i); ! filename = NewStringEmpty(); assert(filename); Printf(filename, "%s%s", dirname, SWIG_FILE_DELIMETER); *************** *** 245,249 **** Swig_read_file(FILE *f) { char buffer[4096]; ! String *str = NewString(""); assert(str); --- 245,249 ---- Swig_read_file(FILE *f) { char buffer[4096]; ! String *str = NewStringEmpty(); assert(str); Index: naming.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/naming.c,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** naming.c 5 Nov 2005 12:43:30 -0000 1.25 --- naming.c 28 Nov 2005 17:32:56 -0000 1.26 *************** *** 148,152 **** String *f; ! r = NewString(""); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"wrapper"); --- 148,152 ---- String *f; ! r = NewStringEmpty(); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"wrapper"); *************** *** 176,180 **** rclassname = SwigType_namestr(classname); ! r = NewString(""); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"member"); --- 176,180 ---- rclassname = SwigType_namestr(classname); ! r = NewStringEmpty(); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"member"); *************** *** 212,216 **** #endif ! r = NewString(""); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"get"); --- 212,216 ---- #endif ! r = NewStringEmpty(); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"get"); *************** *** 236,240 **** String *f; ! r = NewString(""); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"set"); --- 236,240 ---- String *f; ! r = NewStringEmpty(); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"set"); *************** *** 263,267 **** rclassname = SwigType_namestr(classname); ! r = NewString(""); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"construct"); --- 263,267 ---- rclassname = SwigType_namestr(classname); ! r = NewStringEmpty(); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"construct"); *************** *** 298,302 **** rclassname = SwigType_namestr(classname); ! r = NewString(""); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"construct"); --- 298,302 ---- rclassname = SwigType_namestr(classname); ! r = NewStringEmpty(); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"construct"); *************** *** 331,335 **** char *cname; rclassname = SwigType_namestr(classname); ! r = NewString(""); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"destroy"); --- 331,335 ---- char *cname; rclassname = SwigType_namestr(classname); ! r = NewStringEmpty(); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"destroy"); *************** *** 364,368 **** char *cname; rclassname = SwigType_namestr(classname); ! r = NewString(""); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"disown"); --- 364,368 ---- char *cname; rclassname = SwigType_namestr(classname); ! r = NewStringEmpty(); if (!naming_hash) naming_hash = NewHash(); f = Getattr(naming_hash,"disown"); Index: tree.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/tree.c,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** tree.c 28 Nov 2005 02:44:11 -0000 1.16 --- tree.c 28 Nov 2005 17:32:56 -0000 1.17 *************** *** 28,32 **** DOH *cobj; ! if (!root) croot = NewString(""); else croot = root; --- 28,32 ---- DOH *cobj; ! if (!root) croot = NewStringEmpty(); else croot = root; Index: typemap.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/typemap.c,v retrieving revision 1.51 retrieving revision 1.52 diff -C2 -d -r1.51 -r1.52 *** typemap.c 28 Nov 2005 02:44:11 -0000 1.51 --- typemap.c 28 Nov 2005 17:32:56 -0000 1.52 *************** *** 417,422 **** /* Create type signature of source */ ! ssig = NewString(""); ! dsig = NewString(""); p = src; dp = dest; --- 417,422 ---- /* Create type signature of source */ ! ssig = NewStringEmpty(); ! dsig = NewStringEmpty(); p = src; dp = dest; *************** *** 537,541 **** /* Create a type signature of the parameters */ ! tsig = NewString(""); p = parms; lastp = 0; --- 537,541 ---- /* Create a type signature of the parameters */ ! tsig = NewStringEmpty(); p = parms; lastp = 0; *************** *** 823,827 **** if (SwigType_array_ndim(type) != SwigType_array_ndim(ftype)) type = ftype; ndim = SwigType_array_ndim(type); ! size = NewString(""); for (i = 0; i < ndim; i++) { String *dim = SwigType_array_getdim(type,i); --- 823,827 ---- if (SwigType_array_ndim(type) != SwigType_array_ndim(ftype)) type = ftype; ndim = SwigType_array_ndim(type); ! size = NewStringEmpty(); for (i = 0; i < ndim; i++) { String *dim = SwigType_array_getdim(type,i); *************** *** 1099,1103 **** int isglobal = 0; ! str = NewString(""); if (Strncmp(pn,"_global_",8) == 0) { --- 1099,1103 ---- int isglobal = 0; ! str = NewStringEmpty(); if (Strncmp(pn,"_global_",8) == 0) { *************** *** 1393,1397 **** void Swig_typemap_attach_kwargs(Hash *tm, const String_or_char *op, Parm *p) { ! String *temp = NewString(""); Parm *kw = Getattr(tm,k_kwargs); while (kw) { --- 1393,1397 ---- void Swig_typemap_attach_kwargs(Hash *tm, const String_or_char *op, Parm *p) { ! String *temp = NewStringEmpty(); Parm *kw = Getattr(tm,k_kwargs); while (kw) { Index: typesys.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/typesys.c,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -d -r1.41 -r1.42 *** typesys.c 28 Nov 2005 02:44:12 -0000 1.41 --- typesys.c 28 Nov 2005 17:32:56 -0000 1.42 *************** *** 121,124 **** --- 121,125 ---- static String *k_parent = 0; static String *k_value = 0; + static String *k_nodetype = 0; /* *************** *** 158,161 **** --- 159,163 ---- k_parent = NewString("parent"); k_value = NewString("value"); + k_nodetype = NewString("nodeType"); if (global_scope) Delete(global_scope); *************** *** 564,568 **** /* if (!noscope) { ! noscope = NewString(""); } */ --- 566,570 ---- /* if (!noscope) { ! noscope = NewStringEmpty(); } */ *************** *** 662,666 **** } ! if (type && (Strcmp(base,type) == 0)) { if (newtype) Delete(type); Delete(base); --- 664,668 ---- } ! if (type && (StringEqual(base,type))) { if (newtype) Delete(type); Delete(base); *************** *** 863,867 **** } ! result = NewString(""); elements = SwigType_split(t); len = Len(elements); --- 865,869 ---- } ! result = NewStringEmpty(); elements = SwigType_split(t); len = Len(elements); *************** *** 944,948 **** while ((p = pi.item)) { String *qt = SwigType_typedef_qualified(p); ! if ((Strcmp(qt,p) == 0)) { /* && (!Swig_scopename_check(qt))) */ /* No change in value. It is entirely possible that the parameter is an integer value. If there is a symbol table associated with this scope, we're going to check for this */ --- 946,950 ---- while ((p = pi.item)) { String *qt = SwigType_typedef_qualified(p); ! if (StringEqual(qt,p)) { /* && (!Swig_scopename_check(qt))) */ /* No change in value. It is entirely possible that the parameter is an integer value. If there is a symbol table associated with this scope, we're going to check for this */ *************** *** 956,960 **** lastnode = n; if (n) { ! if (Strcmp(nodeType(n),"enumitem") == 0) { /* An enum item. Generate a fully qualified name */ String *qn = Swig_symbol_qualified(n); --- 958,963 ---- lastnode = n; if (n) { ! char *ntype = Char(Getattr(n,k_nodetype)); ! if (strcmp(ntype,"enumitem") == 0) { /* An enum item. Generate a fully qualified name */ String *qn = Swig_symbol_qualified(n); *************** *** 969,973 **** break; } ! } else if ((Strcmp(nodeType(n),"cdecl") == 0) && (Getattr(n,k_value))) { Delete(value); value = Copy(Getattr(n,k_value)); --- 972,976 ---- break; } ! } else if ((strcmp(ntype,"cdecl") == 0) && (Getattr(n,k_value))) { Delete(value); value = Copy(Getattr(n,k_value)); *************** *** 1852,1859 **** #endif ! table = NewString(""); ! types = NewString(""); ! cast = NewString(""); ! cast_init = NewString(""); imported_types = NewHash(""); --- 1855,1862 ---- #endif ! table = NewStringEmpty(); ! types = NewStringEmpty(); ! cast = NewStringEmpty(); ! cast_init = NewStringEmpty(); imported_types = NewHash(""); *************** *** 1874,1878 **** const String *cd; ! cast_temp = NewString(""); Printv(types,"static swig_type_info _swigt_", ki.item, " = {", NIL); --- 1877,1881 ---- const String *cd; ! cast_temp = NewStringEmpty(); Printv(types,"static swig_type_info _swigt_", ki.item, " = {", NIL); Index: error.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/error.c,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -d -r1.9 -r1.10 *** error.c 18 Oct 2004 01:50:46 -0000 1.9 --- error.c 28 Nov 2005 17:32:56 -0000 1.10 *************** *** 72,76 **** va_start(ap,fmt); ! out = NewString(""); vPrintf(out,fmt,ap); { --- 72,76 ---- va_start(ap,fmt); ! out = NewStringEmpty(); vPrintf(out,fmt,ap); { *************** *** 176,180 **** String *s; ! if (!filter) filter = NewString(""); s = NewString(wlist); c = Char(s); --- 176,180 ---- String *s; ! if (!filter) filter = NewStringEmpty(); s = NewString(wlist); c = Char(s); Index: wrapfunc.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/wrapfunc.c,v retrieving revision 1.28 retrieving revision 1.29 diff -C2 -d -r1.28 -r1.29 *** wrapfunc.c 28 Nov 2005 02:44:12 -0000 1.28 --- wrapfunc.c 28 Nov 2005 17:32:56 -0000 1.29 *************** *** 34,40 **** w = (Wrapper *) malloc(sizeof(Wrapper)); w->localh = NewHash(); ! w->locals = NewString(""); ! w->code = NewString(""); ! w->def = NewString(""); return w; } --- 34,40 ---- w = (Wrapper *) malloc(sizeof(Wrapper)); w->localh = NewHash(); ! w->locals = NewStringEmpty(); ! w->code = NewStringEmpty(); ! w->def = NewStringEmpty(); return w; } *************** *** 82,86 **** int label = 0; ! ts = NewString(""); Seek(str,0, SEEK_SET); Clear(ts); --- 82,86 ---- int label = 0; ! ts = NewStringEmpty(); Seek(str,0, SEEK_SET); Clear(ts); *************** *** 220,225 **** int indent = 2; ! ts = NewString(""); ! tf = NewString(""); Seek(str,0, SEEK_SET); Clear(ts); --- 220,225 ---- int indent = 2; ! ts = NewStringEmpty(); ! tf = NewStringEmpty(); Seek(str,0, SEEK_SET); Clear(ts); *************** *** 393,397 **** String *str; ! str = NewString(""); Printf(str,"%s\n", w->def); Printf(str,"%s\n", w->locals); --- 393,397 ---- String *str; ! str = NewStringEmpty(); Printf(str,"%s\n", w->def); Printf(str,"%s\n", w->locals); *************** *** 435,439 **** String *decl; DOH *obj; ! decl = NewString(""); va_start(ap,name); --- 435,439 ---- String *decl; DOH *obj; ! decl = NewStringEmpty(); va_start(ap,name); *************** *** 510,514 **** String *decl; DOH *obj; ! decl = NewString(""); va_start(ap,name); --- 510,514 ---- String *decl; DOH *obj; ! decl = NewStringEmpty(); va_start(ap,name); Index: misc.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/misc.c,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** misc.c 27 Nov 2005 02:58:24 -0000 1.31 --- misc.c 28 Nov 2005 17:32:56 -0000 1.32 *************** *** 64,68 **** String *ns; int c; ! ns = NewString(""); while ((c = Getc(s)) != EOF) { --- 64,68 ---- String *ns; int c; ! ns = NewStringEmpty(); while ((c = Getc(s)) != EOF) { *************** *** 101,105 **** String *ns; int c; ! ns = NewString(""); Seek(s,0,SEEK_SET); --- 101,105 ---- String *ns; int c; ! ns = NewStringEmpty(); Seek(s,0,SEEK_SET); *************** *** 119,123 **** String *ns; int c; ! ns = NewString(""); Seek(s,0,SEEK_SET); --- 119,123 ---- String *ns; int c; ! ns = NewStringEmpty(); Seek(s,0,SEEK_SET); *************** *** 140,144 **** int first = 1; int c; ! ns = NewString(""); Seek(s,0,SEEK_SET); --- 140,144 ---- int first = 1; int c; ! ns = NewStringEmpty(); Seek(s,0,SEEK_SET); *************** *** 161,169 **** int c; String *tc; ! ns = NewString(""); while ((c = Getc(s)) != EOF) { if (c == '`') { String *str = 0; ! tc = NewString(""); while ((c = Getc(s)) != EOF) { if (c == '`') break; --- 161,169 ---- int c; String *tc; ! ns = NewStringEmpty(); while ((c = Getc(s)) != EOF) { if (c == '`') { String *str = 0; ! tc = NewStringEmpty(); while ((c = Getc(s)) != EOF) { if (c == '`') break; *************** *** 232,236 **** return t; #else ! String *result = NewString(""); int space = 0; int state = 0; --- 232,236 ---- return t; #else ! String *result = NewStringEmpty(); int space = 0; int state = 0; *************** *** 246,250 **** b = t ; } ! pc = cb = Char(b); while (*pc) { char c = *pc; --- 246,250 ---- b = t ; } ! pc = cb = StringChar(b); while (*pc) { char c = *pc; *************** *** 252,256 **** state = 1; if (space && (space == state)) { ! Append(result,"_SS_"); } space = 0; --- 252,256 ---- state = 1; if (space && (space == state)) { ! StringAppend(result,"_SS_"); } space = 0; *************** *** 269,273 **** case '.': if ((cb != pc) && (*(pc - 1) == 'p')) { ! Append(result,"_"); ++pc; continue; --- 269,273 ---- case '.': if ((cb != pc) && (*(pc - 1) == 'p')) { ! StringAppend(result,"_"); ++pc; continue; *************** *** 278,282 **** case ':': if (*(pc + 1) == ':') { ! Append(result,"_"); ++pc; ++pc; continue; --- 278,282 ---- case ':': if (*(pc + 1) == ':') { ! StringAppend(result,"_"); ++pc; ++pc; continue; Index: scanner.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/scanner.c,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** scanner.c 31 Oct 2003 17:48:02 -0000 1.13 --- scanner.c 28 Nov 2005 17:32:56 -0000 1.14 *************** *** 49,53 **** s->idstart = ""; s->scanobjs = NewList(); ! s->text = NewString(""); s->str = 0; return s; --- 49,53 ---- s->idstart = ""; s->scanobjs = NewList(); ! s->text = NewStringEmpty(); s->str = 0; return s; Index: symbol.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/symbol.c,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** symbol.c 28 Nov 2005 02:44:11 -0000 1.34 --- symbol.c 28 Nov 2005 17:32:56 -0000 1.35 *************** *** 177,180 **** --- 177,181 ---- /* common attribute keys, to avoid calling find_key all the times */ + static String *empty_string = 0; static String *k_allowstypedef = 0; static String *k_cdecl = 0; *************** *** 185,189 **** static String *k_csymtab = 0; static String *k_decl = 0; - static String *k_empty = 0; static String *k_enumitem = 0; static String *k_inherit = 0; --- 186,189 ---- *************** *** 237,240 **** --- 237,241 ---- void Swig_symbol_init() { + empty_string = NewStringEmpty(); k_allowstypedef = NewString("allows_typedef"); k_cdecl = NewString("cdecl"); *************** *** 245,249 **** k_csymtab = NewString("csymtab"); k_decl = NewString("decl"); - k_empty = NewString("empty"); k_enumitem = NewString("enumitem"); k_inherit = NewString("inherit"); --- 246,249 ---- *************** *** 282,286 **** /* Set the global scope */ symtabs = NewHash(); ! Setattr(symtabs,k_empty,current_symtab); global_scope = current_symtab; } --- 282,286 ---- /* Set the global scope */ symtabs = NewHash(); ! Setattr(symtabs,empty_string,current_symtab); global_scope = current_symtab; } *************** *** 327,331 **** Swig_symbol_getscope(const String_or_char *name) { if (!symtabs) return 0; ! if (StringEqual(k_coloncolon,(String_or_char *)name)) name = k_empty; return Getattr(symtabs,name); } --- 327,331 ---- Swig_symbol_getscope(const String_or_char *name) { if (!symtabs) return 0; ! if (StringEqual(k_coloncolon,(String_or_char *)name)) name = empty_string; return Getattr(symtabs,name); } *************** *** 351,355 **** if (name) { if (!result) { ! result = NewString(""); } if (StringLen(result)) { --- 351,355 ---- if (name) { if (!result) { ! result = NewStringEmpty(); } if (StringLen(result)) { *************** *** 1024,1028 **** char *cname = Char(name); if (strncmp(cname,"::",2) == 0) { ! String *nname = NewString(Char(name)+2); if (Swig_scopename_check(nname)) { s = symbol_lookup_qualified(nname,global_scope,0,0,0); --- 1024,1028 ---- char *cname = Char(name); if (strncmp(cname,"::",2) == 0) { ! String *nname = NewString(cname+2); if (Swig_scopename_check(nname)) { s = symbol_lookup_qualified(nname,global_scope,0,0,0); *************** *** 1095,1099 **** char *cname = Char(name); if (strncmp(cname,"::",2) == 0) { ! String *nname = NewString(Char(name)+2); if (Swig_scopename_check(nname)) { s = symbol_lookup_qualified(nname,global_scope,0,0,checkfunc); --- 1095,1099 ---- char *cname = Char(name); if (strncmp(cname,"::",2) == 0) { ! String *nname = NewString(cname+2); if (Swig_scopename_check(nname)) { s = symbol_lookup_qualified(nname,global_scope,0,0,checkfunc); *************** *** 1158,1162 **** char *cname = Char(name); if (strncmp(cname,"::",2) == 0) { ! String *nname = NewString(Char(name)+2); if (Swig_scopename_check(nname)) { s = symbol_lookup_qualified(nname,global_scope,0,0,0); --- 1158,1162 ---- char *cname = Char(name); if (strncmp(cname,"::",2) == 0) { ! String *nname = NewString(cname+2); if (Swig_scopename_check(nname)) { s = symbol_lookup_qualified(nname,global_scope,0,0,0); *************** *** 1206,1210 **** char *cname = Char(name); if (strncmp(cname,"::",2) == 0) { ! String *nname = NewString(Char(name)+2); if (Swig_scopename_check(nname)) { s = symbol_lookup_qualified(nname,global_scope,0,0,checkfunc); --- 1206,1210 ---- char *cname = Char(name); if (strncmp(cname,"::",2) == 0) { ! String *nname = NewString(cname+2); if (Swig_scopename_check(nname)) { s = symbol_lookup_qualified(nname,global_scope,0,0,checkfunc); *************** *** 1338,1342 **** symtab = HashGetAttr(n,k_symsymtab); } ! if (!symtab) return NewString(""); #ifdef SWIG_DEBUG Printf(stderr,"symbol_qscope %s %x %s\n", HashGetAttr(n,k_name), symtab,HashGetAttr(symtab,k_name)); --- 1338,1342 ---- symtab = HashGetAttr(n,k_symsymtab); } ! if (!symtab) return NewStringEmpty(); #ifdef SWIG_DEBUG Printf(stderr,"symbol_qscope %s %x %s\n", HashGetAttr(n,k_name), symtab,HashGetAttr(symtab,k_name)); *************** *** 1397,1401 **** ti = Next(ti); if (ti.item) { ! Putc(',',qprefix); } Delete(qparm); --- 1397,1401 ---- ti = Next(ti); if (ti.item) { ! StringPutc(',',qprefix); } Delete(qparm); *************** *** 1419,1423 **** int i,len; ! result = NewString(""); elements = SwigType_split(t); --- 1419,1423 ---- int i,len; ! result = NewStringEmpty(); elements = SwigType_split(t); *************** *** 1451,1455 **** Delete(ty); } ! if (strncmp(Char(e),"::",2) == 0) { Delitem(e,0); Delitem(e,0); --- 1451,1455 ---- Delete(ty); } ! if (strncmp(StringChar(e),"::",2) == 0) { Delitem(e,0); Delitem(e,0); *************** *** 1590,1594 **** const char* dclass[3] = {"struct ", "union ", "class "}; int i; ! char * c = Char(nt); for (i=0; i<3; i++) { if (strstr(c, dclass[i]) == c) { --- 1590,1594 ---- const char* dclass[3] = {"struct ", "union ", "class "}; int i; ! char * c = StringChar(nt); for (i=0; i<3; i++) { if (strstr(c, dclass[i]) == c) { *************** *** 1639,1652 **** String * Swig_symbol_string_qualify(String *s, Symtab *st) { ! char *c; ! String *id, *r; ! int have_id = 0; ! ! id = NewString(""); ! r = NewString(""); ! c = Char(s); while (*c) { if (isalpha((int)*c) || (*c == '_') || (*c == ':')) { ! Putc(*c,id); have_id = 1; } else { --- 1639,1649 ---- String * Swig_symbol_string_qualify(String *s, Symtab *st) { ! int have_id = 0; ! String *id = NewStringEmpty(); ! String *r = NewStringEmpty(); ! char *c = StringChar(s); while (*c) { if (isalpha((int)*c) || (*c == '_') || (*c == ':')) { ! StringPutc(*c,id); have_id = 1; } else { *************** *** 1658,1662 **** have_id = 0; } ! Putc(*c,r); } c++; --- 1655,1659 ---- have_id = 0; } ! StringPutc(*c,r); } c++; *************** *** 1740,1744 **** SwigType* Swig_symbol_template_deftype(const SwigType *type, Symtab *tscope) { ! String *result = NewString(""); List *elements = SwigType_split(type); int len = Len(elements); --- 1737,1741 ---- SwigType* Swig_symbol_template_deftype(const SwigType *type, Symtab *tscope) { ! String *result = NewStringEmpty(); List *elements = SwigType_split(type); int len = Len(elements); *************** *** 1810,1814 **** StringAppend(tprefix,ttq); p = nextSibling(p); ! if (p) Putc(',',tprefix); Delete(ttf); Delete(ttq); --- 1807,1811 ---- StringAppend(tprefix,ttq); p = nextSibling(p); ! if (p) StringPutc(',',tprefix); Delete(ttf); Delete(ttq); Index: cwrap.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/cwrap.c,v retrieving revision 1.66 retrieving revision 1.67 diff -C2 -d -r1.66 -r1.67 *** cwrap.c 27 Nov 2005 02:58:24 -0000 1.66 --- cwrap.c 28 Nov 2005 17:32:56 -0000 1.67 *************** *** 55,59 **** String *decl; ! decl = NewString(""); switch(SwigType_type(t)) { --- 55,59 ---- String *decl; ! decl = NewStringEmpty(); switch(SwigType_type(t)) { *************** *** 236,240 **** String *fcall; ! fcall = NewString(""); switch(SwigType_type(t)) { case T_VOID: --- 236,240 ---- String *fcall; ! fcall = NewStringEmpty(); switch(SwigType_type(t)) { case T_VOID: *************** *** 290,294 **** String *nname; ! func = NewString(""); nname = SwigType_namestr(name); --- 290,294 ---- String *nname; ! func = NewStringEmpty(); nname = SwigType_namestr(name); *************** *** 360,364 **** if (!self) self = (char *) "(this)->"; ! func = NewString(""); nname = SwigType_namestr(name); if (!p) return func; --- 360,364 ---- if (!self) self = (char *) "(this)->"; ! func = NewStringEmpty(); nname = SwigType_namestr(name); if (!p) return func; *************** *** 421,425 **** DOH *func; ! func = NewString(""); Printf(func,"(%s *) calloc(1, sizeof(%s))", name, name); return func; --- 421,425 ---- DOH *func; ! func = NewStringEmpty(); Printf(func,"(%s *) calloc(1, sizeof(%s))", name, name); return func; *************** *** 450,454 **** } nname = SwigType_namestr(name); ! func = NewString(""); Printf(func,"new %s(", nname); while (p) { --- 450,454 ---- } nname = SwigType_namestr(name); ! func = NewStringEmpty(); Printf(func,"new %s(", nname); while (p) { *************** *** 626,630 **** Swig_cmemberset_call(String_or_char *name, SwigType *type, String_or_char *self) { String *func; ! func = NewString(""); if (!self) self = NewString("(this)->"); else self = NewString(self); --- 626,630 ---- Swig_cmemberset_call(String_or_char *name, SwigType *type, String_or_char *self) { String *func; ! func = NewStringEmpty(); if (!self) self = NewString("(this)->"); else self = NewString(self); *************** *** 660,664 **** else self = NewString(self); Replaceall(self,"this",Swig_cparm_name(0,0)); ! func = NewString(""); Printf(func,"%s (%s%s)", Swig_wrapped_var_assign(t,""),self, name); Delete(self); --- 660,664 ---- else self = NewString(self); Replaceall(self,"this",Swig_cparm_name(0,0)); ! func = NewStringEmpty(); Printf(func,"%s (%s%s)", Swig_wrapped_var_assign(t,""),self, name); Delete(self); *************** *** 977,981 **** String *name = Getattr(parent, "sym:name"); String* directorname = NewStringf("SwigDirector_%s", name); ! String* action = NewString(""); String* tmp_none_comparison = Copy(none_comparison); String* director_call; --- 977,981 ---- String *name = Getattr(parent, "sym:name"); String* directorname = NewStringf("SwigDirector_%s", name); ! String* action = NewStringEmpty(); String* tmp_none_comparison = Copy(none_comparison); String* director_call; Index: stype.c =================================================================== RCS file: /cvsroot/swig/SWIG/Source/Swig/stype.c,v retrieving revision 1.62 retrieving revision 1.63 diff -C2 -d -r1.62 -r1.63 *** stype.c 28 Nov 2005 02:44:11 -0000 1.62 --- stype.c 28 Nov 2005 17:32:56 -0000 1.63 *************** *** 147,151 **** break; } ! return NewString(""); } --- 147,151 ---- break; } ! return NewStringEmpty(); } *************** *** 358,361 **** --- 358,362 ---- String *r1, *def; String *r = 0; + char *cr; #ifdef SWIG_DEFAULT_CACHE *************** *** 389,393 **** Delete(q); } ! if (Strcmp(r,"p.SWIGTYPE") == 0) { def = NewString("SWIGTYPE"); } else if (SwigType_ispointer(r)) { --- 390,395 ---- Delete(q); } ! cr = Char(r); ! if (strcmp(cr,"p.SWIGTYPE") == 0) { def = NewString("SWIGTYPE"); } else if (SwigType_ispointer(r)) { *************** *** 396,400 **** SwigType_del_pointer(nr); def = SwigType_isfunction(nr) ? ! NewString("") : NewString("p."); SwigType_add_default(def, nr); Delete(nr); --- 398,402 ---- SwigType_del_pointer(nr); def = SwigType_isfunction(nr) ? ! NewStringEmpty() : NewString("p."); SwigType_add_default(def, nr); Delete(nr); *************** *** 402,406 **** def = NewString("p.SWIGTYPE"); #endif ! } else if (Strcmp(r,"r.SWIGTYPE") == 0) { def = NewString("SWIGTYPE"); } else if (SwigType_isreference(r)) { --- 404,408 ---- def = NewString("p.SWIGTYPE"); #endif ! } else if (strcmp(cr,"r.SWIGTYPE") == 0) { def = NewString("SWIGTYPE"); } else if (SwigType_isreference(r)) { *************** *** 415,421 **** #endif } else if (SwigType_isarray(r)) { ! if (Strcmp(r,"a().SWIGTYPE") == 0) { def = NewString("p.SWIGTYPE"); ! } else if (Strcmp(r,"a(ANY).SWIGTYPE") == 0) { def = NewString("a().SWIGTYPE"); } else { --- 417,423 ---- #endif } else if (SwigType_isarray(r)) { ! if (strcmp(cr,"a().SWIGTYPE") == 0) { def = NewString("p.SWIGTYPE"); ! } else if (strcmp(cr,"a(ANY).SWIGTYPE") == 0) { def = NewString("a().SWIGTYPE"); } else { *************** *** 445,449 **** } } else if (SwigType_ismemberpointer(r)) { ! if (Strcmp(r,"m(CLASS).SWIGTYPE") == 0) { def = NewString("p.SWIGTYPE"); } else { --- 447,451 ---- } } else if (SwigType_ismemberpointer(r)) { ! if (strcmp(cr,"m(CLASS).SWIGTYPE") == 0) { def = NewString("p.SWIGTYPE"); } else { *************** *** 451,455 **** } } else if (SwigType_isenum(r)) { ! if (Strcmp(r,"enum SWIGTYPE") == 0) { def = NewString("SWIGTYPE"); } else { --- 453,457 ---- } } else if (SwigType_isenum(r)) { ! if (strcmp(cr,"enum SWIGTYPE") == 0) { def = NewString("SWIGTYPE"); } else { *************** *** 457,461 **** } } else if (SwigType_isfunction(r)) { ! if (Strcmp(r,"f(ANY).SWIGTYPE") == 0) { def = NewString("p.SWIGTYPE"); } else { --- 459,463 ---- } } else if (SwigType_isfunction(r)) { ! if (strcmp(cr,"f(ANY).SWIGTYPE") == 0) { def = NewString("p.SWIGTYPE"); } else { *************** *** 470,474 **** Setattr(default_cache,t,Copy(def)); #endif ! if (Strcmp(def,t) == 0) { Delete(def); def = 0; --- 472,476 ---- Setattr(default_cache,t,Copy(def)); #endif ! if (StringEqual(def,t)) { Delete(def); def = 0; *************** *** 549,553 **** result = NewString(id); } else { ! result = NewString(""); } --- 551,555 ---- result = NewString(id); } else { ! result = NewStringEmpty(); } *************** *** 647,651 **** int notypeconv = 0; ! result = NewString(""); tc = Copy(s); /* Nuke all leading qualifiers */ --- 649,653 ---- int notypeconv = 0; ! result = NewStringEmpty(); tc = Copy(s); /* Nuke all leading qualifiers */ *************** *** 757,761 **** int isarray = 0; ! result = NewString(""); if (SwigType_isconst(s)) { --- 759,763 ---- int isarray = 0; ! result = NewStringEmpty(); if (SwigType_isconst(s)) { *************** *** 859,863 **** Delete(elements); if (clear) { ! cast = NewString(""); } else { cast = NewStringf("(%s)",result); --- 861,865 ---- Delete(elements); if (clear) { ! cast = NewStringEmpty(); } else { cast = NewStringf("(%s)",result); *************** *** 885,889 **** String *result; ! result = NewString(""); if (SwigType_isarray(s)) { --- 887,891 ---- String *result; ! result = NewStringEmpty(); if (SwigType_isarray(s)) { *************** *** 982,995 **** if (!Strstr(t,pat)) return; ! if (Strcmp(t,pat) == 0) { Replace(t,pat,rep,DOH_REPLACE_ANY); return; } ! nt = NewString(""); elem = SwigType_split(t); for (i = 0; i < Len(elem); i++) { String *e = Getitem(elem,i); if (SwigType_issimple(e)) { ! if (Strcmp(e,pat) == 0) { /* Replaces a type of the form 'pat' with 'rep<args>' */ Replace(e,pat,rep,DOH_REPLACE_ANY); --- 984,997 ---- if (!Strstr(t,pat)) return; ! if (StringEqual(t,pat)) { Replace(t,pat,rep,DOH_REPLACE_ANY); return; } ! nt = NewStringEmpty(); elem = SwigType_split(t); for (i = 0; i < Len(elem); i++) { String *e = Getitem(elem,i); if (SwigType_issimple(e)) { ! if (StringEqual(e,pat)) { /* Replaces a type of the form 'pat' with 'rep<args>' */ Replace(e,pat,rep,DOH_REPLACE_ANY); |