Commit graph

85 commits

Author SHA1 Message Date
Thien-Thi Nguyen
36a8a00dfa (GUILE::create_function): Warn to stderr for and do not wrap
functions with more than ten arguments.

Thanks to Matthias Koeppe.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@507 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-28 23:01:00 +00:00
Dave Beazley
190382207b Replaced the C++ String class with a wrapper around DOHString. Eliminated
the automatic conversion of String --> char * at the risk of breaking the
universe (although I think I have fixed everything).  This change made the wrapper
modules a lot more ugly, but it's now a lot more obvious as to what is a
String and what is a char * which will be useful when I get around to patching
up all of the interfaces and objects.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@504 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-28 03:32:58 +00:00
Dave Beazley
7242c6daf7 Applied Oleg's MzScheme patches
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@496 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-19 00:29:04 +00:00
Dave Beazley
243ef9cfee Lot's of cleanup. Removed some more source files. Migrated more functionality to C.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@494 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-18 20:34:21 +00:00
Dave Beazley
2ff8e83a04 Minor bugs with last checkin
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@493 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-18 17:08:45 +00:00
Dave Beazley
8e0010c43a Cleanup
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@492 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-18 16:24:55 +00:00
Dave Beazley
930cc7fede *** empty log message ***
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@488 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-16 19:32:14 +00:00
Dave Beazley
257fda0e30 Disabled the optimized shadow classes by default.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@487 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-16 19:32:01 +00:00
Dave Beazley
d8dc41c0e7 Removed the last of the Workshop 5.0 warnings.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@477 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-16 00:36:04 +00:00
Dave Beazley
2bff7e2491 Eliminated Workshop5.0 warnings
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@476 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-15 22:39:33 +00:00
Dave Beazley
64ddf38c9a Minor fixes and cleanup
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@467 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-15 03:23:47 +00:00
Harco de Hilster
0d453e74ce Oops. Left a debug statement.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@459 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-07 10:04:55 +00:00
Harco de Hilster
a62e154097 Changed finalize and _delete methods. _selfown flag moved to
finalize.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@458 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-06-07 09:55:52 +00:00
Thien-Thi Nguyen
0b470032b5 (GUILE::create_function): Void functions now return
#<unspecified> instead of #<undefined>.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@441 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-05-11 08:57:11 +00:00
Thien-Thi Nguyen
5d7040d7cb (GUILE::link_variable): Fix omission bug: Handle generated
local vars when `with_smobs'.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@429 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-05-10 23:27:52 +00:00
Thien-Thi Nguyen
4711cdada1 (GUILE::create_function): Silence compiler warnings: Delete
unused local vars `need_len' and `need_tempc'.  Also, only
generate `_len' and `_tempc' when not `with_smobs'.  (Thanks to
Matthias Koeppe.)


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@428 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-05-05 17:35:30 +00:00
Thien-Thi Nguyen
d2ee5dc7ad (MZSCHEME::headers): Cleanup.
(MZSCHEME::get_pointer): Rewrite.

(MZSCHEME::create_function): Declare local var `_len' after `_tempc'.
Check `argout_set' before generating `scheme_void' return value.
Use `swig_make_c_pointer' for pointers.
Generated local var `_values' is now an array of pointers.

(MZSCHEME::link_variable): Rewrite using `swig_get_c_pointer'
and `swig_make_c_pointer'.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@424 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2000-04-17 15:58:36 +00:00
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