Memory diagnostics. Huge memory leak cleanup related to templates
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@4639 626c5289-ae23-0410-ae9c-e8d60b6d4f22
This commit is contained in:
parent
8a1dd3868a
commit
9f47936dd0
7 changed files with 167 additions and 50 deletions
|
|
@ -189,6 +189,7 @@ int SWIG_main(int argc, char *argv[], Language *l) {
|
|||
int dump_classes = 0;
|
||||
int werror = 0;
|
||||
int depend = 0;
|
||||
int memory_debug = 0;
|
||||
|
||||
DOH *libfiles = 0;
|
||||
DOH *cpps = 0 ;
|
||||
|
|
@ -427,6 +428,9 @@ int SWIG_main(int argc, char *argv[], Language *l) {
|
|||
} else if (strcmp(argv[i],"-dump_classes") == 0) {
|
||||
dump_classes = 1;
|
||||
Swig_mark_arg(i);
|
||||
} else if (strcmp(argv[i],"-dump_memory") == 0) {
|
||||
memory_debug =1;
|
||||
Swig_mark_arg(i);
|
||||
} else if (strcmp(argv[i],"-help") == 0) {
|
||||
//fputs("Help.\n",stderr);
|
||||
fputs(usage,stderr);
|
||||
|
|
@ -583,11 +587,13 @@ int SWIG_main(int argc, char *argv[], Language *l) {
|
|||
|
||||
Node *top = Swig_cparse(cpps);
|
||||
|
||||
|
||||
if (Verbose) {
|
||||
Printf(stdout,"Processing types...\n");
|
||||
}
|
||||
Swig_process_types(top);
|
||||
|
||||
|
||||
if (Verbose) {
|
||||
Printf(stdout,"C++ analysis...\n");
|
||||
}
|
||||
|
|
@ -652,7 +658,10 @@ int SWIG_main(int argc, char *argv[], Language *l) {
|
|||
}
|
||||
}
|
||||
if (tm_debug) Swig_typemap_debug();
|
||||
if (memory_debug) DohMemoryDebug();
|
||||
while (freeze);
|
||||
|
||||
|
||||
if ((werror) && (Swig_warn_count())) {
|
||||
return Swig_warn_count();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue