It'll never be set under -cffi. Looking at the history it looks like
this is just a remnant from this file being originally created by
copying allegrocl.cxx.
PHPCN(x) does a string compare of x with the lower-cased class name,
so x needs to be in lowercase or else the entry has no effect. The
entries for TRUE, FALSE and NULL weren't working as a result.
Add some missing entries, remove some long obsolete entries (from
the "ming" extension for generating SWF files, which was split
out from PHP core in 2008), and entry for "static" as a reserved class
name (`static::` is used for late static bindings, but attempting to
name a PHP class `static` fails because `static` is a keyword and we
also list it as such).
The underlying wrapper function is now always named using
ZEND_NAMED_FUNCTION even if it's a method (in PHP a function and
a method only differ in how they're used).
Eliminate redundant and unused includes.
Only include the minimum headers needed before the PHP_MAJOR_VERSION
check in case future PHP versions remove some of the headers we
include.
Previously this relied on getting all known classes/functions/etc
when it was loaded, and then again after the PHP module being
tested was loaded. This approach no longer works now we've
stopped loading modules using dl(), so use ReflectionExtension
instead to get information about a specific extension.
This is likely also faster than wading through lists including
everything predefined by PHP.
This has been in the code for a really long time, and doesn't seem
to be required now. It's not documented by PHP as something we
need to do, and the value seems to always be NULL at this point
already.
With modern PHP it only works with the CLI version of PHP, so it's
better to direct users to load the extension via "extension=" in
php.ini.
Suggested by ferdynator in #1529.
Without inventing a SWIG/PHP-specific mechanism, we can't really
finalise objects in the way the testcase expects, so adjust the
testcase minimally so we avoid triggering C++ undefined behaviour
(use-after-free).
These were officially deprecated in 2001, and attempts to use them have
resulted in a warning (including a pointer to what to update them to)
for most if not all of that time.
Fixes#1984
Use sizeof variable name rather than variable type.
Workaround Visual C++ unable to parse some complex C++11 types, such as
sizeof(short (Funcs::*)(bool) const &&)
Remove replacement code added in by autoupdate.
Go with recommendation to unconditionally include C headers
(which we have been doing all along).
Minimum autoconf version can be restored back to what it was.
We do need AC_PROG_EGREP - used by AC_EGREP_CPP
We don't use TIME_WITH_SYS_TIME
Don't check for sys/time.h twice
Minimum version was 2.52 before upgrade, no need to enforce 2.71
Set it to 2.60 (same as main swig configure.ac) - new macros
introduced by autoupdate are in 2.60.