From e7e61fa999092e3e40f3038a9d4d40a4b5b70e4e Mon Sep 17 00:00:00 2001 From: Marcelo Matus Date: Fri, 30 Dec 2005 08:47:13 +0000 Subject: [PATCH] fix for operator() + template + gcc 3.3.5 git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@8133 626c5289-ae23-0410-ae9c-e8d60b6d4f22 --- SWIG/Source/Swig/cwrap.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/SWIG/Source/Swig/cwrap.c b/SWIG/Source/Swig/cwrap.c index 1cd604ab0..f2118a56d 100644 --- a/SWIG/Source/Swig/cwrap.c +++ b/SWIG/Source/Swig/cwrap.c @@ -417,6 +417,12 @@ Swig_cmethod_call(String_or_char *name, ParmList *parms, String_or_char *self) { the rest seems not caring very much, */ if (SwigType_istemplate(name)) { + /* fix for compilers like gcc 3.3.5 + operator() */ + if (strstr(Char(nname),"operator ()") != 0) { + String *tprefix = SwigType_templateprefix(nname); + Delete(nname); + nname = tprefix; + } Printf(func,"SWIGTEMPLATEDISAMBIGUATOR %s(", nname); } else { Printf(func,"%s(", nname);