bug-gnu-pspp
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: PSPP-BUG: [GNU PSPP 0.7.8-ge4a2a3] testsuite: 913 923 failed


From: Ben Pfaff
Subject: Re: PSPP-BUG: [GNU PSPP 0.7.8-ge4a2a3] testsuite: 913 923 failed
Date: Mon, 23 Jan 2012 20:12:50 -0800
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.2 (gnu/linux)

Jeremy Lavergne <address@hidden> writes:

> 913 has an assertion failure/abort trap
> 923 has the same PLUS the output stops where we'd expect "ok 4 - Trap illegal 
> variable name"

It's the same problem in each case.   What the exact problem is,
I'm not sure.  Perhaps it is due to the recent Perl version
upgrade.

In each case, it is aborting due to this Perl code:

   my $var0 = PSPP::Var->new ($d, "le");
   die "trap illegal variable name" if ref $var0;
   die if $d->get_var_cnt () != 0;

which is supposed to be caught by the id_is_plausible() call on
line 329 in PSPP.xs:

    INIT:
     SV *errstr = get_sv("PSPP::errstr", TRUE);
     sv_setpv (errstr, "");
     if ( ! id_is_plausible (name, false))
      {
        sv_setpv (errstr, "The variable name is not valid.");
        XSRETURN_UNDEF;
      }

but apparently it doesn't and instead passes through to:

    CODE:
     struct fmt_spec op_fmt;

     struct variable *v;
     op_fmt = fmt_for_output_from_input (&ip_fmt);
     v = dict_create_var (dict, name,
            fmt_is_string (op_fmt.type) ? op_fmt.w : 0);

and dict_create_var() internally assert-fails due to the invalid
variable name.

John, you know more about Perl extensions than me.  Do you have
any idea about this?

Thanks,

Ben.
-- 
Ben Pfaff 
http://benpfaff.org



reply via email to

[Prev in Thread] Current Thread [Next in Thread]