Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid
 
PerlMonks  

Re^14: supporting quads on 32 bit Perl

by salva (Monsignor)
on Jun 03, 2012 at 08:41 UTC ( #974095=note: print w/ replies, xml ) Need Help??


in reply to Re^13: supporting quads on 32 bit Perl
in thread supporting quads on 32 bit Perl

what about the RETVAL warning in miu64_native_to_uint64? newSVu64 doesn't return a mortal SV, and SV * wasn't saved and therefore leaked. miu64_native_to_int64 is correct and it saves the result of newSVi64.

oops, I overlooked that one!

It was a regression introduced in some of the 0.18_xx releases. I have solved it and added some tests for uint64 serializations.


Comment on Re^14: supporting quads on 32 bit Perl
Re^15: supporting quads on 32 bit Perl
by bulk88 (Priest) on Jun 03, 2012 at 16:54 UTC
    Got latest git version. Everything looks good now. My Visual Studio 2003 is about the same age as ActiveState's build system, so if I can build it, AS should be able to also.
      ok, I have uploaded version 0.20. Let's see how it does at the ActiveState PPM builders this time.

      In any case, if you find any other problem with the module, don't hesitate to report it.

        I got a strange croak from Int64. I'm not sure who to blame. I'm leaning on Test::More is to blame.
        use strict; use warnings; use Math::Int64 qw( hex_to_int64 ); use Test::More; my $normalnum = 0; is($normalnum, hex_to_int64("0x8000200030004000"), "some test");
        sub _unoverload { my $self = shift; my $type = shift; $self->_try(sub { require overload; }, die_on_fail => 1); foreach my $thing (@_) { if( $self->_is_object($$thing) ) { if( my $string_meth = overload::Method( $$thing, $type ) ) + { >>>>>>>>>>>>>>> $$thing = $$thing->$string_meth(); } } } return; }
        which was called from
        sub _unoverload_str { my $self = shift; return $self->_unoverload( q[""], @_ ); }
        which was called from Test::Builder::cmp_ok which was called from Test::Builder::is_eq which was called from Test::More::is. When I put a breakpoint right before Int64's _string XSUB is called in _unoverload, the command line says
        # Failed test 'some test' not ok 1 - some test # at C:\Documents and Settings\Owner\Desktop\n13.pl line 7.
        If I run the whole script the output is
        C:\Documents and Settings\Owner\Desktop>perl n13.pl not ok 1 - some test # Failed test 'some test' # at n13.pl line 7. Usage: Math::Int64::_string(self, other, rev) at C:/perl512/lib/Test/B +uilder.pm line 876. # Tests were run but no plan was declared and done_testing() was not s +een. C:\Documents and Settings\Owner\Desktop>
        In XS, in Math::Int64::_string, from Test::Builder::_unoverload, items variable was 1. That will cause the croak obviously.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://974095]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others lurking in the Monastery: (12)
As of 2014-10-01 13:32 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    What is your favourite meta-syntactic variable name?














    Results (21 votes), past polls