logo       

RE: Next SWIG release: msg#00164

programming.swig

Subject: RE: Next SWIG release

Hello,
the generated file (with command line: swig -c++ -tcl8 -o
..\src\generated\wgwTestbench.cpp
..\Test\src\Testbench\swig\interfaces\interfacestobegenerated.i) has 87206
lines of code. With 5432 functions wrapped.

(interfacestobegenerated.i includes 15 headerfiles. First I was working with
option: -includeall which I soon skipped... :()

Regards
Uwe
-----Ursprüngliche Nachricht-----
Von: David Beazley [mailto:beazley@xxxxxxxxxxxxxxx]
Gesendet: Dienstag, 28. Januar 2003 14:16
An: Koester Uwe (TPM/DM)
Cc: 'Swig@xxxxxxxxxxxxxxx'
Betreff: RE: [Swig] Next SWIG release

Koester Uwe (TPM/DM) writes:
> Hello,
> isn't there anyone else having trouble with the size of the generated
files
> (on windows for file size larger than 65536 lines no more debugging
> information is generated)? I would appreciate to be able to debug
again...
> So it would be nice to divide the output to several parts!
>

How big are the files in question?

It's not very easy for SWIG to break up the wrapper files into
multiple pieces---a lot of the data is static and there are problems
with where you actually make the split.

My inclination on this is to think of ways to reduce the amount of
required wrapper code itself. Actually, I've thought about this
problem for quite some time (several years in fact). In SWIG-1.3.x, a
few minor modifications have been made. For instance, people might
have noticed that base-class methods are no longer re-wrapped in
derived classes. I've thought about other options. For example, if
you have this,

class Base {
public:
virtual void foo() = 0;
};

class Bar : public Base {
public:
virtual void foo();
};

SWIG currently generates two wrapper functions (Base_foo and
Bar_foo). However, one of these is redundant---the Base_foo() wrapper
could be used for both. We could modify SWIG to make this
optimization (and others that are similar).

Of course, I'm sure there are other things we could do as well. I'm open
to ideas on that.

Cheers,

Dave






_______________________________________________
Swig maillist - Swig@xxxxxxxxxxxxxxx
http://mailman.cs.uchicago.edu/mailman/listinfo/swig



<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise