Commit graph

68 commits

Author SHA1 Message Date
Thien-Thi Nguyen
d90b8e6868 (GUILE::headers): Fix conformance bug: Use the `SWIG_NOINCLUDE'
preprocessor symbol to indicate that SWIG runtime functions are
imported from a different module, as it is done in other
language modules.

(GUILE::initialize): Rework `SWIG_init' declaration, so that it
is globally visible only in simple linkage (the user should
rename the function by a #define in this case).

(GUILE::emit_linkage): In call to `scm_register_module_xxx',
cast 2nd arg to `void *'.

(GUILE::create_function): In conjunction w/ exception handling,
generate setting of preprocessor macro `SCHEME_NAME' at the
beginning of the function wrapper, and a corresponding undef at
the end.

(GUILE::link_variable): Fix bug: Printf the C string, not the
String class.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@415 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-12 11:44:15 +00:00
Thien-Thi Nguyen
b0fa80612d Include mzscheme.h.
(usage): Add "-mzscheme" as another target language option.
(main): Recognize "-mzscheme".


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@396 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-06 08:34:40 +00:00
Thien-Thi Nguyen
3b8800e77f (OBJS): Add mzscheme.o.
(SRCS): Add mzscheme.cxx.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@394 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-06 08:30:51 +00:00
Thien-Thi Nguyen
9b441d2630 Initial revision
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@392 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-06 08:26:59 +00:00
Dave Beazley
4afe234098 Removed bool type--won't compile with some compilers (such as mine)
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@380 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-04 15:16:51 +00:00
Thien-Thi Nguyen
17bdafa01a (GUILE::initialize): Fix typo introduced in last commit -- argh!
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@377 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-04 06:31:00 +00:00
Thien-Thi Nguyen
bf4537ca2f (GUILE::GUILE): Default `linkage' is simple.
(GUILE::initialize): Fix bug: Use `SWIGSTATIC'
pre-processor macro to match declaration.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@376 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-04 05:45:52 +00:00
Thien-Thi Nguyen
bc65d71341 (GUILE_LSTYLE_LTDLMOD, GUILE_LSTYLE_HOBBIT): Delete these
pre-processor macros.  These identifiers are now enum values
defined in guile.h.

(GUILE::initialize): Remove old-style cruft, no functional change.

(GUILE::emit_linkage): Now a member of class `GUILE'.
Handle `GUILE_LSTYLE_SIMPLE'.

(GUILE::close): Update call to `emit_linkage'.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@369 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-03 15:08:30 +00:00
Thien-Thi Nguyen
90e0bc6b4d (GUILE::linkage): This data member is now an enum, defined inline.
(GUILE::emit_linkage): New private member method.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@368 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-03 15:03:21 +00:00
Thien-Thi Nguyen
8cdbaf29d2 {Changes contributed by Matthias Koeppe}
(GUILE): Declare new data member `with_smobs' for this class.
Member method `get_pointer' now takes two additional args,
namely `String &proc_name' and `int num_scheme_parm'.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@357 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-03 07:40:33 +00:00
Thien-Thi Nguyen
3286cc871a {Changes contributed by Matthias Koeppe}
(guile_usage): Add blurb on `-with-smobs'.

(GUILE::GUILE): Init new data member.

(GUILE::parse_args): Recognize "-with-smobs".

(GUILE::headers): Rewrite.

(GUILE::initialize): In generated `SWIG_init', call `SWIG_Guile_Init'.

(emit_linkage): Fix omission bug: Generated func now returns a value.

(GUILE::close): Re-activate call to `emit_ptr_equivalence'.

(GUILE::get_pointer): Take two additional args: `proc_name'
and `num_scheme_parm'.  Update callers.
Add handling when `with_smobs'.
Also generate exception-raising code.

(GUILE::create_function): Call `get_pointer' w/ proper args.
Add handling when `with_smobs'.

(GUILE::link_variable): Add handling when `with_smobs'.
Make generated error message more informative.
Also generate exception-raising code.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@356 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-03 07:36:33 +00:00
Dave Beazley
057fbc7d83 Fixed bool handling.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@346 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-19 03:16:54 +00:00
Harco de Hilster
1594189ea9 String x = "";, dumps core now in the destructor, changed to String x;
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@332 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-05 18:07:28 +00:00
Thien-Thi Nguyen
b6198ffe09 (emit_linkage): Fix typo.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@328 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-05 07:08:07 +00:00
Thien-Thi Nguyen
3cd435c3f5 (GUILE::parse_args): Fix OBOE w/ `orig_len'.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@327 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-05 07:04:28 +00:00
Thien-Thi Nguyen
e05f5cda99 (emit_linkage): Fix bug: Use "PATH TO MOD" instead of
"PATH/TO/MOD" for hobbit linkage.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@326 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-04 02:52:40 +00:00
Thien-Thi Nguyen
485c3591f2 (GUILE::guile_path): Delete this unused var.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@325 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-04 02:47:37 +00:00
Thien-Thi Nguyen
ae507a5600 (INCLUDE): Also include ../Include in build dir.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@323 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-04 01:12:07 +00:00
Thien-Thi Nguyen
cd47f52031 (guile_usage): Move warning to end where it's more prominent.
Document default values.  Recognize "-Linkage".

(GUILE::GUILE): Set global var `typemap_lang' here.
Change class-member `prefix' and `package' inits.

(GUILE::parse_args): Recognize "-Linkage" instead of "-linkage".
This anomoly is due to top-level parsing not respecting language-
specific options; "-linkage" aliases to "-l inkage".
Don't set global `typemap_lang'.

(emit_linkage): New func, w/ code from `GUILE::close'.
(GUILE::close): Factor out code to `emit_linkage'.

(GUILE::create_function, GUILE::link_variable,
GUILE::declare_const): Don't use `name_wrapper'.
Simplify naming to always start w/ `prefix'.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@316 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-02 23:35:48 +00:00
Dave Beazley
ef2d1f1d89 Added linkage variable as an int. This is a wild-guess
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@313 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-02 03:28:52 +00:00
Thien-Thi Nguyen
c553b7a53f Remove rejected merge frags and surrounding `TTN_NEW_CODE' tags.
(guile_usage): Document new guile-specific option `-linkage'.
Also add warning: guile support likely to be broken.

(GUILE_LSTYLE_LTDLMOD, GUILE_LSTYLE_HOBBIT): New cpp definitions.

(GUILE::GUILE): Use empty string for default `package'.
Add initialization of `linkage'.

(GUILE::parse_args): Handle "-linkage".

(GUILE::close): Specialize generated initialization based on `linkage'.

(mreplace, throw_unhandled_guile_type_error): New static funcs.

(GUILE::create_function): Fix output formatting bug.  (Thanks to
Matthias Koeppe.)
Factor out `mreplace' and `throw_unhandled_guile_type_error'.
Remove "T_*" type-handling, which is now handled by declaring
typemaps in Lib/guile/typemaps.i.
Restructure nested "if" as cascading "else if", terminating w/ error.

(GUILE::link_variable): Remove "T_*" type-handling, which is now handled
by declaring typemaps in Lib/guile/typemaps.i.
Restructure nested "if" as cascading "else if", terminating w/ error.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@312 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-02 02:01:54 +00:00
Dave Beazley
aff495252c Fixed bug in nested classes.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@304 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-03-01 20:20:22 +00:00
Dave Beazley
19762ec9fe Added DOH
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@298 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-29 20:28:23 +00:00
Dave Beazley
c6900069a7 Added object destruction patch (provided by karl forner).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@295 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-29 17:38:35 +00:00
Dave Beazley
b363cd0a82 Removed dependency on the Hash object
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@290 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-28 22:56:02 +00:00
Thien-Thi Nguyen
97b05cdf53 Include mod11.h instead of swig11.h.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@282 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-28 11:16:12 +00:00
Thien-Thi Nguyen
b59ca86d92 (GUILE::set_module, GUILE::set_init, GUILE::headers,
GUILE::initialize, GUILE::close, GUILE::get_pointer,
GUILE::create_function, GUILE::link_variable,
GUILE::usage_var): Remove debugging output.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@281 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-28 11:11:03 +00:00
Dave Beazley
5ea3f52041 Slash, burn, crash, crumble. Don't mind me.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@279 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-27 03:47:17 +00:00
Dave Beazley
e85cda7cd9 Removed reference to emit_hex (see note in code).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@278 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-27 02:33:05 +00:00
Dave Beazley
88cfd0b455 Removed dependence on SWIG1.1/symbol.cxx
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@276 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-26 21:45:59 +00:00
Dave Beazley
ae7fb643c2 Slight tweak to parse() method.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@275 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-26 20:35:55 +00:00
Dave Beazley
a3a86ae6ef Added SWIG1.3 to include search path
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@273 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-26 20:19:56 +00:00
Dave Beazley
79a4bd4509 Modified language modules to include mod11.h instead of swig11.h
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@272 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-26 20:19:34 +00:00
Thien-Thi Nguyen
66b260c1ff {Changes to enable non-local build}
(srcdir, VPATH): New vars.  Use where appropriate.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@268 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-26 05:06:40 +00:00
Thien-Thi Nguyen
647534bdd5 {Incorporate support contributed by Clark McGrew.}
(guile_usage): Include new options "-module", "-prefix" and "-package".

(GUILE::GUILE): Move definition here from header file.
Init new data members.

(GUILE::parse_args): Handle new options.

(GUILE::set_init): Abort when called, for now.

(GUILE::initialize): Don't define `SWIG_init' in output.
Use computed function name directly.

(GUILE::close): Output module registration.

(GUILE::get_pointer): Use `f.code' instead of `f_wrappers'.

(GUILE::create_function): Large rewrite.

(GUILE::link_variable): Look for type `T_CHAR'
instead of status `STAT_READONLY'.

(GUILE::declare_const): Check typemap first.

(GUILE::usage_func, GUILE::usage_var, GUILE::usage_returns,
GUILE::usage_const): Rewrite.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@257 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-24 18:44:03 +00:00
Thien-Thi Nguyen
6fb29ecbfb {Incorporate support contributed by Clark McGrew.}
(prefix, package): New data members.
(get_pointer): Take additional arg `WrapperFunction&'.
(usage_var, usage_func, usage_const): Last arg now `String&'.
(usage_returns): New func.

(GUILE): Move definition into guile.cxx.
(parse_args, parse, create_function, link_variable,
declare_const, initialize, headers, close, set_module,
set_init, create_command): Don't declare these virtual.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@256 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-24 18:24:07 +00:00
Dave Beazley
3da89a99df Performance
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@247 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-16 17:59:37 +00:00
Dave Beazley
093f7b7e39 More performance improvements
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@246 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-16 17:55:33 +00:00
Dave Beazley
1ee134c656 Another stupid bug.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@242 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-15 23:06:38 +00:00
Dave Beazley
c8f173444d Optimizations
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@238 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-15 19:32:45 +00:00
Dave Beazley
09e555856a Minor fixes.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@228 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-11 19:48:20 +00:00
Dave Beazley
7613594cd9 Minor bug fixes.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@226 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-11 19:47:56 +00:00
Dave Beazley
6252cd1103 Slight change to type-handling.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@214 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-10 22:09:43 +00:00
Dave Beazley
9948d8f667 Fixed some problems with constants.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@213 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-10 22:09:31 +00:00
Dave Beazley
7c549890f1 Removed the documentation system. A lot of cleanup.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@208 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-10 19:41:28 +00:00
Dave Beazley
38c2518d77 Minor cleanup
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@207 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-10 15:06:19 +00:00
Dave Beazley
e6503a9f19 Completed Tcl global variable linking.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@202 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-08 23:03:16 +00:00
Dave Beazley
df5e523581 Changed code-generation for constants to use a table instead of repeated function
calls in the initialization function.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@196 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-04 17:20:57 +00:00
Dave Beazley
a3e279d7d4 Minor fixes to type handling.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@193 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-04 05:26:38 +00:00
Dave Beazley
04ea7149f6 Work on Tcl global variable support.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@187 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-02-02 23:36:49 +00:00