[parrot/parrot] 0e72e0: [core] WIP fix morph [GH #372]

GitHub noreply at github.com
Mon Mar 10 16:37:23 UTC 2014


  Branch: refs/heads/rurban/morph-gh372
  Home:   https://github.com/parrot/parrot
  Commit: 0e72e0f547cf18bd050fb014109f3c0b2948425f
      https://github.com/parrot/parrot/commit/0e72e0f547cf18bd050fb014109f3c0b2948425f
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-03-10 (Mon, 10 Mar 2014)

  Changed paths:
    M src/pmc.c
    M src/pmc/default.pmc
    M src/pmc/fixedpmcarray.pmc
    M src/pmc/resizablepmcarray.pmc
    M src/pmc/undef.pmc
    M t/src/extend_vtable.t

  Log Message:
  -----------
  [core] WIP fix morph [GH #372]

pass the correct type info to pmc_reuse
allow the 2nd argument to be a Object PMC, so
use Parrot_pmc_reuse_init instead.

Define some FixedPMCArray morphs.

TODO:
- get_class Undef returns a PMCProxy object
- More basic arrays, Integer, String and Hash morphes
- non-builtin types via PARROT_CLASS(type)->id
  and Parrot_pmc_reuse_by_class

- morph old values into new type (pmc specific).
  e.g. *Array => Integer needs to assign the elements to the get_integer iv


  Commit: 70f624580618dcf4f3e5780c946b130c6d9626a2
      https://github.com/parrot/parrot/commit/70f624580618dcf4f3e5780c946b130c6d9626a2
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-03-10 (Mon, 10 Mar 2014)

  Changed paths:
    M src/pmc/fixedpmcarray.pmc

  Log Message:
  -----------
  morph: add morph methods to undef and fixedpmcarray

fixes the test to morph fixedpmcarray to integer
t/src/extend_vtable.t 9

t/pmc/undef.t: 10 still broken: String morph to Undef, get_class Undef is a PMCProxy


  Commit: 64b47ff65fa9c2de3e812b1a1eb620c720af6124
      https://github.com/parrot/parrot/commit/64b47ff65fa9c2de3e812b1a1eb620c720af6124
  Author: Reini Urban <rurban at cpanel.net>
  Date:   2014-03-10 (Mon, 10 Mar 2014)

  Changed paths:
    A t/op/morph.t

  Log Message:
  -----------
  [test] start t/op/morph.t


Compare: https://github.com/parrot/parrot/compare/2b41d35bc6be...64b47ff65fa9


More information about the parrot-commits mailing list