Commit graph

106 commits

Author SHA1 Message Date
William S Fulton
e2ce97f397 Add the ability for special variable macros to call other special variable macros. Also added additional diagnostics when using -debug-tmsearch. Add tests for std::vector of shared_ptr.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12059 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-26 23:22:49 +00:00
William S Fulton
03bd7005bb Fix typemap delete regression introduced in rev 11838
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12008 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-03 22:58:27 +00:00
William S Fulton
efd200ffe2 Typemap matching rules enhancement for non-default typemaps. Previously all qualifiers were stripped in one step, now they are stripped one at a time starting with the left most qualifier.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12007 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-02 21:35:02 +00:00
William S Fulton
01c4ab6baf Fix some terminology used in C++ template partial specialization and new typemap matching rules
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11982 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-04-09 21:40:23 +00:00
William S Fulton
bdb136d611 Change typemap matching rules for the default type (SWIGTYPE) to follow template partial specialization type deduction. Fixes some containers of const pointers. SWIGTYPE*& typemps removed and replaced with SWIGTYPE *const&.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11958 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-04-01 18:26:37 +00:00
William S Fulton
cb64f65bae SWIG license change - Source moves to GPLv3
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11876 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-02-27 23:53:33 +00:00
William S Fulton
590567d57f Factor out the common code within typemap_search() into typemap_search_helper()
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11838 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-02-01 20:23:34 +00:00
William S Fulton
a4d28ba148 Remove unnecessary duplicate typemap lookup
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11833 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-29 06:55:38 +00:00
William S Fulton
d02f543dbc Fix typemap matching bug when a templated type has a typemap both specialized and not specialized - the wrong typemap would sometimes be used
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11831 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-28 07:25:59 +00:00
William S Fulton
f112e4bac1 Fix #2933129 - typemaps not being found when the unary scope operator (::) is used to denote global scope
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11827 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-22 20:39:54 +00:00
William S Fulton
71c8881dda Some more file and line numbering reporting consistency fixes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11814 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-09 20:00:27 +00:00
William S Fulton
0f93753a08 Improve -debug-tmused output so that the typemap method name is always shown - it was missing when the typemap came from a %apply.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11808 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-09 00:24:25 +00:00
William S Fulton
eb2e4a59d0 minor tidy up
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11805 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-08 08:09:41 +00:00
William S Fulton
65a52707f0 Minor fix for -debug-tmused and multi-argument typemaps
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11804 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-05 23:44:42 +00:00
William S Fulton
b1ad69ade5 Fix -debug-tmsearch and -debug-tmused to show tthat the typemap came from a typemap copy or %apply
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11803 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-05 23:24:47 +00:00
William S Fulton
83bd820285 Add typemaps used debugging option (-debug-tmused). Fix missing file/line numbers for typemap warnings and in the output from the -debug-tmsearch/-debug-tmused options
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11802 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-01-04 19:33:52 +00:00
William S Fulton
8b7c0afcfc Display filename and line number in output when using -debug-tmsearch
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11801 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-12-24 17:00:35 +00:00
William S Fulton
97f959ddf0 Slight improvement to -debug-tmsearch and multi-argument typemaps
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11794 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-12-22 19:21:55 +00:00
William S Fulton
ac224e8570 -debug-tmsearch improvements and fixes. Also slightly more efficient typemap searches when using fully qualified names.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11793 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-12-21 01:08:53 +00:00
William S Fulton
d1ff2c6a8b Add -debug-tmsearch option for debugging the typemap pattern matching rules
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11790 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-12-20 00:24:34 +00:00
William S Fulton
28983db50f variable name corrections for consistency to use typemap method instead of op
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11787 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-12-17 19:34:53 +00:00
William S Fulton
41d3c98993 fix $typemap() when the type contains template parameters
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11506 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-05 21:40:49 +00:00
William S Fulton
bbcfa0b089 () for multi-argument typemaps
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11481 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-07-30 17:42:18 +00:00
William S Fulton
7f0e632ddd typemap method name: use consistent terminology in code
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11473 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-07-30 06:06:49 +00:00
William S Fulton
bf0ee4471c (method, typelist) special variable macro fixed/enhanced and made official
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11470 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-07-29 20:50:39 +00:00
William S Fulton
224c83ef09 Typemap API changes to facilitate more uniform typemap handling across language modules - in particular some typemaps usage did not respect the warning attribute and other warning handling and $typemap special variable (which will be refined in future commit) as well as local typemap variable handling:
- remove Swig_typemap_search, Swig_typemap_search_multi and Swig_typemap_attach_kwargs from access outside of typemaps.c (made static)
  - all static methods in typemap.c renamed dropping Swig_ prefix


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11380 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-07-08 12:17:45 +00:00
Haoyu Bai
47b4825168 Merged revisions 11085-11086,11088-11089 via svnmerge from
https://swig.svn.sourceforge.net/svnroot/swig/branches/swig-2.0

........
  r11085 | bhy | 2009-01-25 00:21:55 +0800 (Sun, 25 Jan 2009) | 2 lines
  
  Fix const-correctness.
........
  r11086 | bhy | 2009-01-25 02:08:50 +0800 (Sun, 25 Jan 2009) | 2 lines
  
  Correct some function definition in header files, which implementation changed in previous commit caused mismatch.
........
  r11088 | bhy | 2009-01-25 02:38:32 +0800 (Sun, 25 Jan 2009) | 1 line
  
  minor fix and now SWIG is alive again
........
  r11089 | bhy | 2009-01-25 06:07:07 +0800 (Sun, 25 Jan 2009) | 1 line
  
  Correct some bug introduced in previous commits. Now SWIG is pretty good with C++ compiler.
........


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11097 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-01-30 10:27:37 +00:00
Haoyu Bai
6d2aef67d9 Replaced all [const] String_or_char * to const_String_or_char_ptr, by the following command:
sed -i "s/\(const \)\?String_or_char \*/const_String_or_char_ptr /g" CParse/* Include/* Modules/* Preprocessor/* Swig/*

This is a preparation for moving to new DOH, since for strong typed objects we need the const_String_or_char_ptr class to implicit convert to and from String * or const char *.



git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11080 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-01-24 13:15:51 +00:00
William S Fulton
dfcb1640bf Remove old swig-1.1 Swig_typemap_lookup function. Rename Swig_typemap_lookup_new() to Swig_typemap_lookup()
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10453 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-15 21:18:44 +00:00
William S Fulton
336b50b43d Add the optimal attribute to the out typemap for more optimal code generation when returning objects by value
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@10450 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2008-05-14 22:12:31 +00:00
John Lenz
fb51964d01 Fix a bunch of minor bugs found by Coverity scanner
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9889 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-08-10 02:55:27 +00:00
Dave Beazley
ff41049b1c Eliminated use of swigkeys.h/.c files.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9632 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-01-03 20:58:19 +00:00
Dave Beazley
c12550e4ad API cleanup. Documentation
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9631 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2007-01-03 05:23:20 +00:00
Dave Beazley
264b7dff90 API cleanup. Documentation.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9629 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-12-30 18:27:47 +00:00
Dave Beazley
7a826c8b6d Changed Header keyword to Id for SVN
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@9604 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-12-05 21:57:44 +00:00
William S Fulton
aa04c4c057 beautify/format source code with gnu indent
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9505 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-11-01 23:54:54 +00:00
Olly Betts
1e19f11fdc Use Strchr/strchr instead of Strstr/strstr when searching for a single
character.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@9334 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-09-23 22:36:23 +00:00
William S Fulton
7f74b8e7a3 Common template for head of each file detailing licence, distribution and authors information
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8972 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-03-06 22:51:01 +00:00
Marcelo Matus
6760dc7fb1 fix typemap issue reported by Bob Marinier
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8819 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-15 22:55:56 +00:00
Marcelo Matus
01893da18e fixes for %templates/%rename/%features + templates
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8720 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-02-05 20:25:43 +00:00
Marcelo Matus
ba1e3f9ee3 add fragment warning and fixes
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8645 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-30 22:22:13 +00:00
Marcelo Matus
e236ab4584 fix several compiler warnings
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8531 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-23 22:58:49 +00:00
Marcelo Matus
571b48e269 fix for freearg with value especialization
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8525 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-23 08:15:46 +00:00
Marcelo Matus
cea522b4f8 fix java/csharp overload issue
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8524 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-23 01:55:00 +00:00
Marcelo Matus
b63855287f fix 'freearg' applied to 'in' when numinputs=0
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8500 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-21 08:03:31 +00:00
Marcelo Matus
b78b990eab add debug prints and avoid to attach an empty typemap
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8460 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-15 18:00:11 +00:00
Marcelo Matus
55005e98ee Move rename/namewarn engine from parser.y to naming.c. The code was getting
too large to be in the parser.

Centralize the swig keys to avoid replication and wrong spellings.

Use more HashGetAttr where possible and other speed improvements
to compensate for the extra work introduced by the new rename/namewarn
mechanism.


git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8170 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-02 04:33:19 +00:00
Marcelo Matus
48d21c2b35 avoid multiple Len() calls
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8161 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2006-01-01 11:03:35 +00:00
Marcelo Matus
eb913fd8c4 remove debug prints
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8111 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-12-28 21:09:51 +00:00
Marcelo Matus
88e6edcac3 fix for the typemap match option
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk/SWIG@8108 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2005-12-28 07:52:55 +00:00