Perl

NAVIGATION
CATEGORIES
REFERRENCE
LINKS
  • Implement .loadlib pragma in IMCC

    3 answers - 537 bytes - related search similar search Add To My Delicious Add To My Stumble Upon Add To My Google Mark Add To My Facebook Add To My Digg Add To My Reddit

    Am Freitag, 14. Juli 2006 04:02 schrieb Will Coleda via RT:
    Whoops, re-opening.
    This apparently isn't quite ready yet, as converting tcl to use the new
    syntax results in a nearly- complete fail of the test suite.
    Per Audrey: .loadlib 'dynlexpad' stopped working, because
    Parrot_register_HLL breaks on non- HLL-group .so files.
    Err, t/dynpmc/dynlexpad.t is using .loadlib and is testing fine. Please try to
    provide a minimal parrot test showing the problem.
    Thanks,
    leo
  • No.1 | | 999 bytes | |

    b 2006/7/14 W 5:26 ALeopold Toetsch via RT gG

    Err, t/dynpmc/dynlexpad.t is using .loadlib and is testing fine.
    Please try to
    provide a minimal parrot test showing the problem.

    Trying (though it remained a bit elusive), but if you "make
    realclean", and then change
    languages/tcl/src/tclsh.pir so that it uses .loadlib instead
    of :immediate, and then
    "make", cd into languages/tcl and "make test", you'll notice that all
    tests fail with:

    # got: 'set_string_keyed() not implemented in class 'T'
    # current instr.: '__prepare_lib' pc 19483 (runtime/tcllib.pir:122)
    # called from Sub '_main' pc 3 (src/tclsh.pir:42)

    Changing it back to :immediate makes tests pass again.

    Alternately, skipping the Parrot_register_HLL part in IMCC makes
    tests pass again.

    Thanks,
    Audrey

    PGP SIGNATURE
    Version: GnuPG v1.4.3 (Darwin)

    I4RPN1iVnUIWRbB9pxA=
    =i3rG
    PGP SIGNATURE
  • No.2 | | 1003 bytes | |

    b 2006/7/14 W 6:45 AAudrey Tang gG
    Changing it back to :immediate makes tests pass again.

    Alternately, skipping the Parrot_register_HLL part in IMCC makes
    tests pass again.

    After several rounds of trial-and-error, I've committed r13294 that
    works around the problem:

    * Tcl: Change back to .loadlib.

    Simply adding this line to tcllib.pir:
    .loadlib 'dynlexpad'
    appears to fix the problem.

    According to leo, .loadlib acts like a dummy HLL, so there is
    an order dependency to be observed by .loadlib calls.

    This may not be a problem if Parrot_register_HLL_type takes the
    HLL name instead of the current max HLL_idx, but the current state
    renders this workaround neccessary.

    So this ticket is probably good to be closed again, though it still
    leaves me somewhat puzzled. :)

    Audrey
    PGP SIGNATURE
    Version: GnuPG v1.4.3 (Darwin)

    6LYqm1fpDIATX+JE/SoL/c4=
    =nQ4E
    PGP SIGNATURE
  • No.3 | | 1170 bytes | |

    So, does .loadlib wipe the current .HLL pragma that's in effect? (if
    it's intereacting with the other dot-pragmas, we need to document.)

    Regards.

    Jul 14, 2006, at 7:17 AM, Audrey Tang wrote:

    2006/7/14 6:45 Audrey Tang
    >Changing it back to :immediate makes tests pass again.
    >>

    >Alternately, skipping the Parrot_register_HLL part in IMCC makes
    >tests pass again.
    >

    After several rounds of trial-and-error, I've committed r13294 that
    works around the problem:

    * Tcl: Change back to .loadlib.

    Simply adding this line to tcllib.pir:
    .loadlib 'dynlexpad'
    appears to fix the problem.

    According to leo, .loadlib acts like a dummy HLL, so there is
    an order dependency to be observed by .loadlib calls.

    This may not be a problem if Parrot_register_HLL_type takes the
    HLL name instead of the current max HLL_idx, but the current state
    renders this workaround neccessary.

    So this ticket is probably good to be closed again, though it still
    leaves me somewhat puzzled. :)

    Audrey

Re: Implement .loadlib pragma in IMCC


max 4000 letters.
Your nickname that display:
In order to stop the spam: 2 + 1 =
QUESTION ON "Perl"

EMSDN.COM