Ticket #1982 (closed bug: fixed)

Opened 4 years ago

Last modified 4 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 4 years ago.
Source code of test

Change History

Changed 4 years ago by dukeleto

Source code of test

Changed 4 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 4 years ago by dukeleto

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