William S Fulton
468ca084fc
Correct special variables in 'directorargout' typemap. This change will break any 'directorargout' typemaps you may have written. Please change: to and to \n Also fix the named 'directorargout' DIRECTOROUT typemaps for these languages which didn't previously compile and add in , etc expansion.\n [C#, Go, Java, D] Add support for the 'directorargout' typemap.\n [Java] Add (char *STRING, size_t LENGTH) director typemaps.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12877 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-12-20 20:50:36 +00:00
William S Fulton
24133bacd7
Remove numerous hard coded 'result' variable name in generated c/c++ wrappers. The variable name is now defined in just one place, making it possible to change the name easily if a target language so wishes - see cwrap.c.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12830 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-10-30 21:51:50 +00:00
William S Fulton
44c202d048
Add in $symname expansion for director methods
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12772 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-08-04 19:45:19 +00:00
Olly Betts
210266cd70
[PHP] Don't generate "return $r;" in cases where $r hasn't been set.
...
This was basically harmless, except it generated a PHP E_NOTICE if
the calling code had enabled them.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12767 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-07-29 10:51:02 +00:00
Olly Betts
688ea24560
[PHP] Fix director code to work when PHP is built with ZTS enabled,
...
which is the standard configuration on Microsoft Windows.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12749 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-06-23 16:04:42 +00:00
Olly Betts
29190559f8
SWIG_ZTS_SetPointerZval() now interprets bit 1 in newobject as meaning (wrap
...
in a PHP class wrapper), rather than taking newobject==2 as meaning this,
so we can wrap new and existing objects in this way.
Handle wrapping classes in a C++ namespace being returned by director methods.
No need to force classname to lowercase as zend_lookup_class() does that
internally.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12723 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-05-30 06:47:47 +00:00
Olly Betts
dce3b5bacf
[PHP] Fix handling of directors when -prefix is used.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12722 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-05-30 04:49:29 +00:00
Olly Betts
1d7f309a8a
[PHP] Fix handling of methods of classes with a virtual base class (SF#3124665).
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12711 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-05-24 14:51:59 +00:00
Olly Betts
72fc8be46c
[PHP] Fix handling of overloaded methods/functions where some
...
return void and others don't - whether this worked or not depended
on the order they were encountered in (SF#3208299).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12539 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-14 12:33:56 +00:00
William S Fulton
a63d456f8a
Remove redundant code highlighted by warnings in gcc-4.6
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12536 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-14 07:22:08 +00:00
William S Fulton
b69b793d8e
Better consistency in usage display
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12524 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-09 21:42:38 +00:00
Olly Betts
24053d7789
[PHP] Don't use zend_error_noreturn() for cases where the function
...
returns void - now this issue can only matter if you have a function
or method which is directed and returns non-void.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12523 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-03-07 23:05:01 +00:00
Olly Betts
630e438c6a
[PHP] Address bug in PHP on some platforms/architectures which
...
results in zend_error_noreturn() not being available using
SWIG_ZEND_ERROR_NORETURN which defaults to zend_error_noreturn but
can be overridden when building the module by passing
-DSWIG_ZEND_ERROR_NORETURN=zend_error to the compiler. This may
result in compiler warnings, but should at least allow a module
to be built on those platforms/architectures (SF#3166423).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12479 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-19 13:28:43 +00:00
Olly Betts
bf7c9e9a42
[PHP] An overloaded method which can return an object or a
...
primitive type no longer causes SWIG to segfault. Reported by Paul
Colby in SF#3168531.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12471 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-18 06:39:51 +00:00
William S Fulton
74883f1dd7
[PHP] SF #3166423 Recent PHP versions no longer define zend_error_noreturn - calls to this have been replaced with zend_error.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12430 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2011-02-04 20:25:59 +00:00
William S Fulton
1adc50e730
constify SwigType * in many places
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12349 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-12-15 21:55:08 +00:00
William S Fulton
004643ff30
Fix mangling of PHP constructor wrapper when types use global scope or typedefs
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12309 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-11-25 20:39:11 +00:00
Olly Betts
9eaf5ba1be
[PHP] Allow compilation on non-conforming Microsoft C++ compilers
...
which don't accept: return function_returning_void();
Reported by Frank Vanden Berghen on the SWIG mailing list.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12265 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-10-14 05:13:09 +00:00
Olly Betts
a25ccbf58b
[PHP] Fix handling of OUTPUT typemaps (Patch from Ryan in SF#3058394).
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12208 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-09-08 02:40:56 +00:00
Olly Betts
d0d40db326
Use SWIG_PTR rather than literal "_cPtr".
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12149 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-25 02:41:27 +00:00
Olly Betts
ae40eff993
The default visibility for methods is public, so don't specify that explicitly
...
to keep the wrapper size down.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12146 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-24 14:44:06 +00:00
William S Fulton
95a3eb5a7d
code style: fix inconsistent NULL pointer comparisons
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12137 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-17 23:49:12 +00:00
Olly Betts
f67c0fa12c
[PHP] Fix directors to correctly call a method with has a
...
different name in PHP to C++ (we were always using the C++ name
in this case).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12110 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-06-10 04:41:11 +00:00
William S Fulton
bb41eeb343
Fix potential name clashes with symbols in the Director class
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12062 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-27 20:55:24 +00:00
Olly Betts
e512093358
[PHP] Stop generating a bogus line of code in certain constructors.
...
This was mostly harmless, but caused a PHP notice to be issued, if
enabled (SF#2985684).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12033 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-21 07:07:15 +00:00
Olly Betts
227f2e2e0a
[PHP] Fix wrapping of global variables which was producing
...
uncompilable code in some cases.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@12027 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-05-14 08:22:28 +00:00
William S Fulton
e81bfb86c0
Correct file and line number display for some error messages, these now also result in exiting with an error.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11945 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2010-03-13 23:08:02 +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
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
Olly Betts
bfb09161f7
Eliminate "int error;" declaration from generated PHP director support code
...
if it isn't used. No change in behaviour, and the compiler will just optimise
away the unused variable, but it can cause an "unused variable" warning.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11776 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-12-10 11:52:29 +00:00
Olly Betts
bcda9644f1
Remove two commented out lines of code.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11773 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-12-04 04:56:10 +00:00
Olly Betts
dd5714ea28
[php] Fix place where class prefix (as specified with -prefix)
...
wasn't being used. Patch from gverbruggen in SF#2892647.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11736 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-11-13 07:15:08 +00:00
Miklos Vajna
fc52ca3b80
PHP: handle -prefix when checking if a class has been subclassed or not
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11637 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-18 16:23:23 +00:00
Olly Betts
4540717c39
[PHP] Fix to wrap a resource returned by __get() in a PHP object (SF#2549217).
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11619 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-17 08:47:30 +00:00
Olly Betts
47e404ba5b
Only have an array for properties in the base class, not in derived classes.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11611 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-17 05:24:17 +00:00
Olly Betts
c4f5f22f67
Remove some superfluous "else"s in generated PHP code.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11610 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-17 03:19:14 +00:00
Miklos Vajna
8da18d336e
PHP: Optimize the previous commit a bit.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11594 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-16 21:47:24 +00:00
Miklos Vajna
b5c49c20fd
PHP: fix for the valuewrapper_base testcase
...
The problem is the following: before director support, the return class
type of a function was hardwired. That was bad, as factory functions
wanted to instantiate abstract classes, so we switched to detecting the
class type based on the PHP resource type. That was good, but broke the
case when for example
%template(make_Interface_BP) make<Interface_<BinaryPolarization> >;
was used, as the cheap parser had no idea how to turn
'Interface_T_oss__BinaryPolarization_t' to 'make_Interface_BP'.
This patch still uses the resource type detection, but in case that
would result in a non-existing class, we just use the hardwired name.
NOTE: This still does not fix the case when abstract classes are used
with templates.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11593 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-16 21:44:05 +00:00
Olly Betts
f3d0ebbf18
Refactor the recent support for wrapping static member variables for PHP5 so it
...
works for static members which are themselves classes. With this and the previous
patch, li_std_string now passes and all other tests pass/fail as before.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11578 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-15 05:33:05 +00:00
Olly Betts
ba29cea2b5
Minor cleanups.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11571 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-14 17:01:20 +00:00
Olly Betts
57017bd6bc
[PHP] PHP5 now wraps static member variables as documented.
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11570 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-14 16:22:15 +00:00
Olly Betts
f4e3444ae3
Use module name instead of hardcoded "example" in __get().
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11567 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-14 09:44:15 +00:00
Olly Betts
e125ce326d
If $c would be used as a parameter name, rename it to $c_ to avoid issues
...
if call-time pass-by-reference is enabled and used.
Use $c instead of $class to keep down the number of "reserved" parameter
names.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11564 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-14 08:04:21 +00:00
Olly Betts
e068305125
If there's no prefix, special case to avoid prepending an empty string.
...
Don't calculate $class in the stdClass case when we don't need it.
Eliminate an unnecessary else.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11563 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-14 07:53:38 +00:00
Miklos Vajna
889b156afd
PHP: fix for the extend_template testcase
...
The fix is not to handle a %template as a rename by reading the class'
sym:name attribute instead of the ctor's name attribute.
This has been broken in r11510.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11539 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-12 11:18:58 +00:00
Olly Betts
741b90763b
Fix to work for classes which aren't called "Foo"...
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11531 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-11 14:42:03 +00:00
Olly Betts
37b9370344
Eliminate space before "function" when there's no access specifier (just a
...
cosmetic tweak).
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11530 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-11 14:40:51 +00:00
Miklos Vajna
b61f9da6e6
PHP: fix for the template_ref_type testcase
...
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11528 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-11 10:19:04 +00:00
Miklos Vajna
486419b271
PHP: Skip the Foo:: prefix when detecting ctor renames
...
This fixes a few testcases (like the mixed_types one) I broke in the
previous commit.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11512 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-06 13:16:50 +00:00
Miklos Vajna
09b20003fb
PHP: fix for the overload_rename testcase
...
Previously we just had two __construct function which resulted in a
parse error. Now we create a new factory method for the renamed ctor.
git-svn-id: https://swig.svn.sourceforge.net/svnroot/swig/trunk@11510 626c5289-ae23-0410-ae9c-e8d60b6d4f22
2009-08-06 12:27:03 +00:00