Fix handling of "default" typemap applied to method which takes a
single argument when "-builtin" option is used.
Fixes#2786Closes#2790Closes#3241Closes#3243
Co-authored by @ojwb who also suggested it in discussion of #2790.
We don't seem to have anything in the testsuite which exercises this
case.
There's some special handling of casts applied to string literals in the
parser which was committed as part of the fix for this, but removing it
doesn't seem to cause anything to fail (not even this testcase which
it reportedly fixed), and a wide character version seems to work without
any equivalent special handling. Maybe other things have changed since
which fixed this case without needing special cast handling. Deserves
further investigation.
On 32-bit platforms -2147483648 is a PHP float (rather than PHP int on
64-bit platforms) so only check equivalence rather than strict equality.
Fixes#2360