Ticket #1982 (closed bug: fixed)

Opened 11 years ago

Last modified 11 years ago

Parrot_PMC_thaw and Parrot_PMC_freeze broken

Reported by: dukeleto Owned by: whiteknight
Priority: normal Milestone:
Component: embed/extend Version: 3.0.0
Severity: medium Keywords:
Cc: Language:
Patch status: Platform: all

Description

From t/src/extend_vtable.t :

not ok 1 - Parrot_PMC_(freeze|thaw|thawfinish) # TODO freeze + thaw are borked
#   Failed (TODO) test 'Parrot_PMC_(freeze|thaw|thawfinish)'
#   at t/src/extend_vtable.t line 75.
# Exited with error code: 1
# Received:

where the test that is failing is :

extend_vtable_output_is(<<'CODE', <<'OUTPUT', "Parrot_PMC_(freeze|thaw|thawfinish)", todo => 'freeze + thaw are borked');
    Parrot_PMC_set_integer_native(interp, pmc, 42);
    Parrot_PMC_set_integer_native(interp, pmc2, 99);

    Parrot_PMC_freeze(interp, pmc, pmc2);
    Parrot_PMC_thaw(interp, pmc, pmc2);
    Parrot_printf(interp,"%d\n", 42);
CODE
42
Done!
OUTPUT

If you run the test with

POSTMORTEM=1 prove -v t/src/extend_vtable.t

the binary and C source file will be left behind. By running strace on the binary, I found this interesting output at the end:

open("/usr/lib/locale/en_CA.utf8/LC_CTYPE", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=256324, ...}) = 0
mmap(NULL, 256324, PROT_READ, MAP_PRIVATE, 4, 0) = 0x7fe269d2c000
close(4)                                = 0
open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = 4
fstat(4, {st_mode=S_IFREG|0644, st_size=26048, ...}) = 0
mmap(NULL, 26048, PROT_READ, MAP_SHARED, 4, 0) = 0x7fe269d25000
close(4)                                = 0
futex(0x7fe2669b7f60, FUTEX_WAKE_PRIVATE, 2147483647) = 0
brk(0x1af6000)                          = 0x1af6000
brk(0x1b17000)                          = 0x1b17000
brk(0x1b38000)                          = 0x1b38000
brk(0x1b59000)                          = 0x1b59000
brk(0x1b7a000)                          = 0x1b7a000
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(2, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
fsync(1)                                = -1 EINVAL (Invalid argument)
fsync(2)                                = -1 EINVAL (Invalid argument)
exit_group(1)                           = ?

Attachments

extend_vtable_1.c Download (2.1 KB) - added by dukeleto 11 years ago.
Source code of test

Change History

Changed 11 years ago by dukeleto

Source code of test

Changed 11 years ago by jkeenan

The tests in this file are passing. The todo has been removed.

Can we close this ticket?

Thank you very much.

kid51

Changed 11 years ago by dukeleto

  • status changed from new to closed
  • resolution set to fixed
Note: See TracTickets for help on using tickets.