This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
[perl #113980] pp_syscall: "I32 retval" truncates the returned value
authorOleg Nesterov <oleg@redhat.com>
Wed, 4 Jul 2012 15:21:15 +0000 (08:21 -0700)
committerFather Chrysostomos <sprout@cpan.org>
Wed, 4 Jul 2012 15:53:50 +0000 (08:53 -0700)
commitf9344c91a4ca48288bba30dc94a2d712d0659670
tree6bdacc9dcca78dbc3daec9e76e9d54da49f6b17c
parenta2e392149708327a5f56db7babd3692619a2f08a
[perl #113980] pp_syscall: "I32 retval" truncates the returned value

I noticed today that syscall(9, ...) (mmap) doesn't work for me.

The problem is obvious, pp_syscall() uses I32 for retval and the
"long" address doesn't fit into "int".

The one-liner below should fix the problem.
pp_sys.c