[svn:parrot] r46774 - in trunk: . include/parrot src t/src

plobsing at svn.parrot.org plobsing at svn.parrot.org
Wed May 19 01:07:22 UTC 2010


Author: plobsing
Date: Wed May 19 01:07:21 2010
New Revision: 46774
URL: https://trac.parrot.org/parrot/changeset/46774

Log:
remove duplicate embed/extend vtable wrappers
TT #1587

Modified:
   trunk/DEPRECATED.pod
   trunk/include/parrot/extend.h
   trunk/src/extend.c
   trunk/t/src/embed.t
   trunk/t/src/extend.t

Modified: trunk/DEPRECATED.pod
==============================================================================
--- trunk/DEPRECATED.pod	Tue May 18 21:05:39 2010	(r46773)
+++ trunk/DEPRECATED.pod	Wed May 19 01:07:21 2010	(r46774)
@@ -335,18 +335,6 @@
 
 L<https://trac.parrot.org/parrot/ticket/1540>
 
-=item Parrot_PMC_* in src/extend.c [eligible in 2.4]
-
-These are duplicates of functions in src/extend_vtable.c. Exceptions:
-
-  Parrot_PMC_new
-  Parrot_PMC_typenum
-  Parrot_PMC_null
-  Parrot_PMC_set_vtable
-  Parrot_PMC_newclass
-
-L<https://trac.parrot.org/parrot/ticket/1587>
-
 =item Parrot_VTABLE, Parrot_get_vtable, Parrot_PMC_set_vtable [eligible in 2.4]
 
 These do not expose any functionality that should be available to code outside

Modified: trunk/include/parrot/extend.h
==============================================================================
--- trunk/include/parrot/extend.h	Tue May 18 21:05:39 2010	(r46773)
+++ trunk/include/parrot/extend.h	Wed May 19 01:07:21 2010	(r46774)
@@ -126,103 +126,6 @@
         __attribute__nonnull__(1);
 
 PARROT_EXPORT
-void Parrot_PMC_delete_pmckey(PARROT_INTERP, Parrot_PMC pmc, Parrot_PMC key)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
-PARROT_WARN_UNUSED_RESULT
-char * Parrot_PMC_get_cstring(PARROT_INTERP, Parrot_PMC pmc)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-PARROT_MALLOC
-PARROT_WARN_UNUSED_RESULT
-PARROT_CANNOT_RETURN_NULL
-char * Parrot_PMC_get_cstring_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-PARROT_MALLOC
-PARROT_WARN_UNUSED_RESULT
-PARROT_CANNOT_RETURN_NULL
-char * Parrot_PMC_get_cstringn(PARROT_INTERP,
-    ARGIN(Parrot_PMC pmc),
-    ARGOUT(Parrot_Int *length))
-        __attribute__nonnull__(1)
-        __attribute__nonnull__(2)
-        __attribute__nonnull__(3)
-        FUNC_MODIFIES(*length);
-
-PARROT_EXPORT
-PARROT_MALLOC
-PARROT_WARN_UNUSED_RESULT
-PARROT_CANNOT_RETURN_NULL
-char * Parrot_PMC_get_cstringn_intkey(PARROT_INTERP,
-    ARGIN(Parrot_PMC pmc),
-    ARGOUT(Parrot_Int *length),
-    Parrot_Int key)
-        __attribute__nonnull__(1)
-        __attribute__nonnull__(2)
-        __attribute__nonnull__(3)
-        FUNC_MODIFIES(*length);
-
-PARROT_EXPORT
-Parrot_Int Parrot_PMC_get_intval(PARROT_INTERP, Parrot_PMC pmc)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-Parrot_Int Parrot_PMC_get_intval_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-Parrot_Int Parrot_PMC_get_intval_pmckey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_PMC key)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-Parrot_Float Parrot_PMC_get_numval(PARROT_INTERP, Parrot_PMC pmc)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-Parrot_Float Parrot_PMC_get_numval_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-Parrot_PMC Parrot_PMC_get_pmc_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-Parrot_PMC Parrot_PMC_get_pmc_strkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_String key)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-PARROT_WARN_UNUSED_RESULT
-PARROT_CAN_RETURN_NULL
-void * Parrot_PMC_get_pointer_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-Parrot_String Parrot_PMC_get_string_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
 Parrot_PMC Parrot_PMC_new(PARROT_INTERP, Parrot_Int type)
         __attribute__nonnull__(1);
 
@@ -234,114 +137,6 @@
 Parrot_PMC Parrot_PMC_null(void);
 
 PARROT_EXPORT
-void Parrot_PMC_push_intval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Int value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_push_numval(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Float value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_push_pmcval(PARROT_INTERP, Parrot_PMC pmc, Parrot_PMC value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_cstring(PARROT_INTERP,
-    Parrot_PMC pmc,
-    ARGIN_NULLOK(const char *value))
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_cstring_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key,
-    ARGIN_NULLOK(const char *value))
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_cstringn(PARROT_INTERP,
-    Parrot_PMC pmc,
-    ARGIN_NULLOK(const char *value),
-    Parrot_UInt length)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_cstringn_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key,
-    ARGIN_NULLOK(const char *value),
-    Parrot_UInt length)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_intval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Int value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_intval_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key,
-    Parrot_Int value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_numval(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Float value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_numval_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key,
-    Parrot_Float value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_pmc_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key,
-    Parrot_PMC value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_pmc_pmckey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_PMC key,
-    Parrot_PMC value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_pmc_strkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_String key,
-    Parrot_PMC value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_pointer_intkey(PARROT_INTERP,
-    ARGIN(Parrot_PMC pmc),
-    Parrot_Int key,
-    ARGIN_NULLOK(void *value))
-        __attribute__nonnull__(1)
-        __attribute__nonnull__(2);
-
-PARROT_EXPORT
-void Parrot_PMC_set_string(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_String value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
-void Parrot_PMC_set_string_intkey(PARROT_INTERP,
-    Parrot_PMC pmc,
-    Parrot_Int key,
-    Parrot_String value)
-        __attribute__nonnull__(1);
-
-PARROT_EXPORT
 void Parrot_PMC_set_vtable(SHIM_INTERP,
     Parrot_PMC pmc,
     Parrot_VTABLE vtable);
@@ -424,80 +219,11 @@
        PARROT_ASSERT_ARG(interp))
 #define ASSERT_ARGS_Parrot_new_string __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_delete_pmckey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_cstring __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_cstring_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_cstringn __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp) \
-    , PARROT_ASSERT_ARG(pmc) \
-    , PARROT_ASSERT_ARG(length))
-#define ASSERT_ARGS_Parrot_PMC_get_cstringn_intkey \
-     __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp) \
-    , PARROT_ASSERT_ARG(pmc) \
-    , PARROT_ASSERT_ARG(length))
-#define ASSERT_ARGS_Parrot_PMC_get_intval __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_intval_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_intval_pmckey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_numval __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_numval_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_pmc_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_pmc_strkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_pointer_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_get_string_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
 #define ASSERT_ARGS_Parrot_PMC_new __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(interp))
 #define ASSERT_ARGS_Parrot_PMC_newclass __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(interp))
 #define ASSERT_ARGS_Parrot_PMC_null __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
-#define ASSERT_ARGS_Parrot_PMC_push_intval __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_push_numval __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_push_pmcval __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_cstring __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_cstring_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_cstringn __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_cstringn_intkey \
-     __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_intval __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_intval_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_numval __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_numval_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_pmc_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_pmc_pmckey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_pmc_strkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_pointer_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp) \
-    , PARROT_ASSERT_ARG(pmc))
-#define ASSERT_ARGS_Parrot_PMC_set_string __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
-#define ASSERT_ARGS_Parrot_PMC_set_string_intkey __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
-       PARROT_ASSERT_ARG(interp))
 #define ASSERT_ARGS_Parrot_PMC_set_vtable __attribute__unused__ int _ASSERT_ARGS_CHECK = (0)
 #define ASSERT_ARGS_Parrot_PMC_typenum __attribute__unused__ int _ASSERT_ARGS_CHECK = (\
        PARROT_ASSERT_ARG(interp))

Modified: trunk/src/extend.c
==============================================================================
--- trunk/src/extend.c	Tue May 18 21:05:39 2010	(r46773)
+++ trunk/src/extend.c	Wed May 19 01:07:21 2010	(r46774)
@@ -189,748 +189,6 @@
 
 /*
 
-=item C<Parrot_String Parrot_PMC_get_string_intkey(PARROT_INTERP, Parrot_PMC
-pmc, Parrot_Int key)>
-
-Return the integer keyed string value of the passed-in PMC
-
-=cut
-
-*/
-
-PARROT_EXPORT
-Parrot_String
-Parrot_PMC_get_string_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key)
-{
-    ASSERT_ARGS(Parrot_PMC_get_string_intkey)
-    Parrot_String retval;
-    PARROT_CALLIN_START(interp);
-    retval = VTABLE_get_string_keyed_int(interp, pmc, key);
-    PARROT_CALLIN_END(interp);
-    return retval;
-}
-
-
-/*
-
-=item C<void * Parrot_PMC_get_pointer_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key)>
-
-Return a pointer to the PMC indicated by an integer key.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_WARN_UNUSED_RESULT
-PARROT_CAN_RETURN_NULL
-void *
-Parrot_PMC_get_pointer_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key)
-{
-    ASSERT_ARGS(Parrot_PMC_get_pointer_intkey)
-    void *retval;
-    PARROT_CALLIN_START(interp);
-    retval = VTABLE_get_pointer_keyed_int(interp, pmc, key);
-    PARROT_CALLIN_END(interp);
-    return retval;
-}
-
-/*
-
-=item C<Parrot_PMC Parrot_PMC_get_pmc_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key)>
-
-Return the integer keyed PMC value of the passed-in PMC
-
-=cut
-
-*/
-
-PARROT_EXPORT
-Parrot_PMC
-Parrot_PMC_get_pmc_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key)
-{
-    ASSERT_ARGS(Parrot_PMC_get_pmc_intkey)
-    Parrot_PMC retval;
-    PARROT_CALLIN_START(interp);
-    retval = VTABLE_get_pmc_keyed_int(interp, pmc, key);
-    PARROT_CALLIN_END(interp);
-    return retval;
-}
-
-/*
-
-=item C<Parrot_PMC Parrot_PMC_get_pmc_strkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_String key)>
-
-Return the string keyed PMC value of the passed-in PMC
-
-=cut
-
-*/
-
-PARROT_EXPORT
-Parrot_PMC
-Parrot_PMC_get_pmc_strkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_String key)
-{
-    ASSERT_ARGS(Parrot_PMC_get_pmc_strkey)
-    Parrot_PMC retval;
-    PARROT_CALLIN_START(interp);
-    retval = VTABLE_get_pmc_keyed_str(interp, pmc, key);
-    PARROT_CALLIN_END(interp);
-    return retval;
-}
-
-/*
-
-=item C<Parrot_Int Parrot_PMC_get_intval(PARROT_INTERP, Parrot_PMC pmc)>
-
-Return the signed integer value of the value in the PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-Parrot_Int
-Parrot_PMC_get_intval(PARROT_INTERP, Parrot_PMC pmc)
-{
-    ASSERT_ARGS(Parrot_PMC_get_intval)
-    Parrot_Int retval;
-    PARROT_CALLIN_START(interp);
-    retval = VTABLE_get_integer(interp, pmc);
-    PARROT_CALLIN_END(interp);
-    return retval;
-}
-
-/*
-
-=item C<Parrot_Int Parrot_PMC_get_intval_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key)>
-
-Return the keyed, signed integer value of the value in the PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-Parrot_Int
-Parrot_PMC_get_intval_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key)
-{
-    ASSERT_ARGS(Parrot_PMC_get_intval_intkey)
-    Parrot_Int retval;
-    PARROT_CALLIN_START(interp);
-    retval = VTABLE_get_integer_keyed_int(interp, pmc, key);
-    PARROT_CALLIN_END(interp);
-    return retval;
-}
-
-/*
-
-=item C<Parrot_Int Parrot_PMC_get_intval_pmckey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_PMC key)>
-
-Return the keyed, signed integer value of the value in the PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-Parrot_Int
-Parrot_PMC_get_intval_pmckey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_PMC key)
-{
-    ASSERT_ARGS(Parrot_PMC_get_intval_pmckey)
-    Parrot_Int retval;
-    PARROT_CALLIN_START(interp);
-    retval = VTABLE_get_integer_keyed(interp, pmc, key);
-    PARROT_CALLIN_END(interp);
-    return retval;
-}
-
-/*
-
-=item C<Parrot_Float Parrot_PMC_get_numval(PARROT_INTERP, Parrot_PMC pmc)>
-
-Return the floating-point value of the PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-Parrot_Float
-Parrot_PMC_get_numval(PARROT_INTERP, Parrot_PMC pmc)
-{
-    ASSERT_ARGS(Parrot_PMC_get_numval)
-    Parrot_Float retval;
-    PARROT_CALLIN_START(interp);
-    retval = VTABLE_get_number(interp, pmc);
-    PARROT_CALLIN_END(interp);
-    return retval;
-}
-
-/*
-
-=item C<Parrot_Float Parrot_PMC_get_numval_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key)>
-
-Return the keyed, signed integer value of the value in the PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-Parrot_Float
-Parrot_PMC_get_numval_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key)
-{
-    ASSERT_ARGS(Parrot_PMC_get_numval_intkey)
-    Parrot_Float retval;
-    PARROT_CALLIN_START(interp);
-    retval = VTABLE_get_number_keyed_int(interp, pmc, key);
-    PARROT_CALLIN_END(interp);
-    return retval;
-}
-
-/*
-
-=item C<char * Parrot_PMC_get_cstring_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key)>
-
-Return a null-terminated string that represents the string value of the PMC.
-
-Note that you must free this string with C<Parrot_str_free_cstring()>!
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_MALLOC
-PARROT_WARN_UNUSED_RESULT
-PARROT_CANNOT_RETURN_NULL
-char *
-Parrot_PMC_get_cstring_intkey(PARROT_INTERP, Parrot_PMC pmc, Parrot_Int key)
-{
-    ASSERT_ARGS(Parrot_PMC_get_cstring_intkey)
-    STRING *intermediate;
-    char   *retval;
-
-    PARROT_CALLIN_START(interp);
-    intermediate = VTABLE_get_string_keyed_int(interp, pmc, key);
-    retval       = Parrot_str_to_cstring(interp, intermediate);
-    PARROT_CALLIN_END(interp);
-
-    return retval;
-}
-
-/*
-
-=item C<char * Parrot_PMC_get_cstring(PARROT_INTERP, Parrot_PMC pmc)>
-
-Return a null-terminated string that represents the string value of the PMC.
-
-Note that you must free this string with C<Parrot_str_free_cstring()>!
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_MALLOC
-PARROT_CANNOT_RETURN_NULL
-PARROT_WARN_UNUSED_RESULT
-char *
-Parrot_PMC_get_cstring(PARROT_INTERP, Parrot_PMC pmc)
-{
-    ASSERT_ARGS(Parrot_PMC_get_cstring)
-    STRING *intermediate;
-    char   *retval;
-
-    PARROT_CALLIN_START(interp);
-    intermediate = VTABLE_get_string(interp, pmc);
-    retval       = Parrot_str_to_cstring(interp, intermediate);
-    PARROT_CALLIN_END(interp);
-
-    return retval;
-}
-
-/*
-
-=item C<char * Parrot_PMC_get_cstringn(PARROT_INTERP, Parrot_PMC pmc, Parrot_Int
-*length)>
-
-Return a null-terminated string for the PMC, along with the length.
-
-Yes, right now this is a bit of a cheat. It needs fixing, but without
-disturbing the interface.
-
-Note that you must free the string with C<Parrot_str_free_cstring()>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_MALLOC
-PARROT_WARN_UNUSED_RESULT
-PARROT_CANNOT_RETURN_NULL
-char *
-Parrot_PMC_get_cstringn(PARROT_INTERP, ARGIN(Parrot_PMC pmc), ARGOUT(Parrot_Int *length))
-{
-    ASSERT_ARGS(Parrot_PMC_get_cstringn)
-    char *retval;
-
-    PARROT_CALLIN_START(interp);
-    retval  = Parrot_str_to_cstring(interp, VTABLE_get_string(interp, pmc));
-    *length = strlen(retval);
-    PARROT_CALLIN_END(interp);
-
-    return retval;
-}
-
-/*
-
-=item C<char * Parrot_PMC_get_cstringn_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int *length, Parrot_Int key)>
-
-Return a null-terminated string for the PMC, along with the length.
-
-Yes, right now this is a bit of a cheat. It needs fixing, but without
-disturbing the interface.
-
-Note that you must free this string with C<Parrot_str_free_cstring()>.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-PARROT_MALLOC
-PARROT_WARN_UNUSED_RESULT
-PARROT_CANNOT_RETURN_NULL
-char *
-Parrot_PMC_get_cstringn_intkey(PARROT_INTERP, ARGIN(Parrot_PMC pmc),
-        ARGOUT(Parrot_Int *length), Parrot_Int key)
-{
-    ASSERT_ARGS(Parrot_PMC_get_cstringn_intkey)
-    char *retval;
-
-    PARROT_CALLIN_START(interp);
-    retval  = Parrot_str_to_cstring(interp,
-                               VTABLE_get_string_keyed_int(interp, pmc, key));
-    *length = strlen(retval);
-    PARROT_CALLIN_END(interp);
-
-    return retval;
-}
-
-/*
-
-=item C<void Parrot_PMC_set_string(PARROT_INTERP, Parrot_PMC pmc, Parrot_String
-value)>
-
-Assign the passed-in Parrot string to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_string(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_String value)
-{
-    ASSERT_ARGS(Parrot_PMC_set_string)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_string_native(interp, pmc, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_string_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key, Parrot_String value)>
-
-Assign the passed-in Parrot string to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_string_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key, Parrot_String value)
-{
-    ASSERT_ARGS(Parrot_PMC_set_string_intkey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_string_keyed_int(interp, pmc, key, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_pmc_intkey(PARROT_INTERP, Parrot_PMC pmc, Parrot_Int
-key, Parrot_PMC value)>
-
-Assign the passed-in pmc to the passed-in slot of the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_pmc_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key, Parrot_PMC value)
-{
-    ASSERT_ARGS(Parrot_PMC_set_pmc_intkey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_pmc_keyed_int(interp, pmc, key, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_pmc_strkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_String key, Parrot_PMC value)>
-
-Assign the passed-in pmc to the passed-in slot of the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_pmc_strkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_String key, Parrot_PMC value)
-{
-    ASSERT_ARGS(Parrot_PMC_set_pmc_strkey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_pmc_keyed_str(interp, pmc, key, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_pmc_pmckey(PARROT_INTERP, Parrot_PMC pmc, Parrot_PMC
-key, Parrot_PMC value)>
-
-Assign the passed-in pmc to the passed-in slot of the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_pmc_pmckey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_PMC key, Parrot_PMC value)
-{
-    ASSERT_ARGS(Parrot_PMC_set_pmc_pmckey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_pmc_keyed(interp, pmc, key, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_pointer_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key, void *value)>
-
-Assign the passed-in pointer to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_pointer_intkey(PARROT_INTERP,
-        ARGIN(Parrot_PMC pmc), Parrot_Int key, ARGIN_NULLOK(void *value))
-{
-    ASSERT_ARGS(Parrot_PMC_set_pointer_intkey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_pointer_keyed_int(interp, pmc, key, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_intval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Int
-value)>
-
-Assign the passed-in Parrot integer to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_intval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Int value)
-{
-    ASSERT_ARGS(Parrot_PMC_set_intval)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_integer_native(interp, pmc, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_intval_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key, Parrot_Int value)>
-
-Assign the passed-in Parrot integer to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_intval_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key, Parrot_Int value)
-{
-    ASSERT_ARGS(Parrot_PMC_set_intval_intkey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_integer_keyed_int(interp, pmc, key, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_numval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Float
-value)>
-
-Assign the passed-in Parrot number to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_numval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Float value)
-{
-    ASSERT_ARGS(Parrot_PMC_set_numval)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_number_native(interp, pmc, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_numval_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key, Parrot_Float value)>
-
-Assign the passed-in Parrot number to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_numval_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key, Parrot_Float value)
-{
-    ASSERT_ARGS(Parrot_PMC_set_numval_intkey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_number_keyed_int(interp, pmc, key, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_cstring(PARROT_INTERP, Parrot_PMC pmc, const char
-*value)>
-
-Assign the passed-in null-terminated C string to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_cstring(PARROT_INTERP, Parrot_PMC pmc, ARGIN_NULLOK(const char *value))
-{
-    ASSERT_ARGS(Parrot_PMC_set_cstring)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_string_native(interp, pmc,
-                             Parrot_str_new(interp, value, 0));
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_cstring_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key, const char *value)>
-
-Assign the passed-in null-terminated C string to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_cstring_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key, ARGIN_NULLOK(const char *value))
-{
-    ASSERT_ARGS(Parrot_PMC_set_cstring_intkey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_string_keyed_int(interp, pmc, key,
-                                Parrot_str_new(interp, value, 0));
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_cstringn(PARROT_INTERP, Parrot_PMC pmc, const char
-*value, Parrot_UInt length)>
-
-Assign the passed-in length-noted string to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_cstringn(PARROT_INTERP,
-        Parrot_PMC pmc, ARGIN_NULLOK(const char *value), Parrot_UInt length)
-{
-    ASSERT_ARGS(Parrot_PMC_set_cstringn)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_string_native(interp, pmc,
-                             Parrot_str_new(interp, value, length));
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_push_intval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Int
-value)>
-
-Push the passed-in Parrot integer onto the passed in PMC
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_push_intval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Int value)
-{
-    ASSERT_ARGS(Parrot_PMC_push_intval)
-    PARROT_CALLIN_START(interp);
-    VTABLE_push_integer(interp, pmc, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_push_numval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Float
-value)>
-
-Push the passed-in Parrot number onto the passed in PMC
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_push_numval(PARROT_INTERP, Parrot_PMC pmc, Parrot_Float value)
-{
-    ASSERT_ARGS(Parrot_PMC_push_numval)
-    PARROT_CALLIN_START(interp);
-    VTABLE_push_float(interp, pmc, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_push_pmcval(PARROT_INTERP, Parrot_PMC pmc, Parrot_PMC
-value)>
-
-Push the passed-in Parrot PMC onto the passed in PMC
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_push_pmcval(PARROT_INTERP, Parrot_PMC pmc, Parrot_PMC value)
-{
-    ASSERT_ARGS(Parrot_PMC_push_pmcval)
-    PARROT_CALLIN_START(interp);
-    VTABLE_push_pmc(interp, pmc, value);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_delete_pmckey(PARROT_INTERP, Parrot_PMC pmc, Parrot_PMC
-key)>
-
-Deletes the value associated with the passed-in PMC from the PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_delete_pmckey(PARROT_INTERP, Parrot_PMC pmc, Parrot_PMC key)
-{
-    ASSERT_ARGS(Parrot_PMC_delete_pmckey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_delete_keyed(interp, pmc, key);
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
-=item C<void Parrot_PMC_set_cstringn_intkey(PARROT_INTERP, Parrot_PMC pmc,
-Parrot_Int key, const char *value, Parrot_UInt length)>
-
-Assign the passed-in length-noted string to the passed-in PMC.
-
-=cut
-
-*/
-
-PARROT_EXPORT
-void
-Parrot_PMC_set_cstringn_intkey(PARROT_INTERP,
-        Parrot_PMC pmc, Parrot_Int key, ARGIN_NULLOK(const char *value),
-        Parrot_UInt length)
-{
-    ASSERT_ARGS(Parrot_PMC_set_cstringn_intkey)
-    PARROT_CALLIN_START(interp);
-    VTABLE_set_string_keyed_int(interp, pmc, key,
-                                Parrot_str_new(interp, value, length));
-    PARROT_CALLIN_END(interp);
-}
-
-/*
-
 =item C<Parrot_PMC Parrot_PMC_new(PARROT_INTERP, Parrot_Int type)>
 
 Create and return a new PMC.

Modified: trunk/t/src/embed.t
==============================================================================
--- trunk/t/src/embed.t	Tue May 18 21:05:39 2010	(r46773)
+++ trunk/t/src/embed.t	Wed May 19 01:07:21 2010	(r46774)
@@ -278,10 +278,10 @@
     /* Get parrot namespace */
     rootns = Parrot_get_root_namespace(interp);
     parrotname = Parrot_new_string(interp, "parrot", 6, (const char *)NULL, 0);
-    parrotns = Parrot_PMC_get_pmc_strkey(interp, rootns,  parrotname);
+    parrotns = Parrot_PMC_get_pmc_keyed_str(interp, rootns,  parrotname);
     /* Get the sub */
     subname = Parrot_new_string(interp, "hello", 5, (const char *)NULL, 0);
-    sub = Parrot_PMC_get_pmc_strkey(interp, parrotns,  subname);
+    sub = Parrot_PMC_get_pmc_keyed_str(interp, parrotns,  subname);
     /* Execute it */
     Parrot_ext_call(interp, sub, "->");
 
@@ -402,10 +402,10 @@
     /* Create extern sub and insert in parrot namespace */
     rootns = Parrot_get_root_namespace(interp);
     parrotname = Parrot_new_string(interp, "parrot", 6, (const char *)NULL, 0);
-    parrotns = Parrot_PMC_get_pmc_strkey(interp, rootns, parrotname);
+    parrotns = Parrot_PMC_get_pmc_keyed_str(interp, rootns, parrotname);
     hellosub = Parrot_sub_new_from_c_func(interp, (void (*)())& hello, "vJ");
     helloname = Parrot_new_string(interp, "hello", 5, (const char *)NULL, 0);
-    Parrot_PMC_set_pmc_strkey(interp, parrotns, helloname, hellosub);
+    Parrot_PMC_set_pmc_keyed_str(interp, parrotns, helloname, hellosub);
 
     /* Call it */
     Parrot_ext_call(interp, code, "->");

Modified: trunk/t/src/extend.t
==============================================================================
--- trunk/t/src/extend.t	Tue May 18 21:05:39 2010	(r46773)
+++ trunk/t/src/extend.t	Wed May 19 01:07:21 2010	(r46774)
@@ -12,7 +12,7 @@
 use Parrot::Test;
 use Parrot::Config;
 
-plan tests => 20;
+plan tests => 18;
 
 =head1 NAME
 
@@ -148,7 +148,7 @@
 Test
 OUTPUT
 
-c_output_is( <<'CODE', <<'OUTPUT', 'PMC_set/get_intval' );
+c_output_is( <<'CODE', <<'OUTPUT', 'PMC_set/get_integer' );
 
 #include <stdio.h>
 #include "parrot/embed.h"
@@ -169,8 +169,8 @@
     type    = Parrot_PMC_typenum(interp, "Integer");
     testpmc = Parrot_PMC_new(interp, type);
 
-    Parrot_PMC_set_intval(interp, testpmc, value);
-    new_value = Parrot_PMC_get_intval(interp, testpmc);
+    Parrot_PMC_set_integer_native(interp, testpmc, value);
+    new_value = Parrot_PMC_get_integer(interp, testpmc);
 
     printf("%ld\n", (long)new_value);
 
@@ -181,7 +181,7 @@
 101010
 OUTPUT
 
-c_output_is( <<'CODE', <<'OUTPUT', 'PMC_set/get_intval_intkey' );
+c_output_is( <<'CODE', <<'OUTPUT', 'PMC_set/get_integer_keyed_int' );
 
 #include <stdio.h>
 #include "parrot/parrot.h"
@@ -197,9 +197,9 @@
     Parrot_Int key   = 10;
     Parrot_Int new_value;
 
-    Parrot_PMC_set_intval_intkey(interp, array, key, value);
+    Parrot_PMC_set_integer_keyed_int(interp, array, key, value);
 
-    new_value = Parrot_PMC_get_intval_intkey(interp, array, key);
+    new_value = Parrot_PMC_get_integer_keyed_int(interp, array, key);
 
     printf("%ld\n", (long)new_value);
     return NULL;
@@ -244,13 +244,13 @@
     type    = Parrot_PMC_typenum(interp, "Integer");
     testpmc = Parrot_PMC_new(interp, type);
 
-    Parrot_PMC_set_intval(interp, testpmc, value);
+    Parrot_PMC_set_integer_native(interp, testpmc, value);
 
     parrot_reg = 31;
     Parrot_set_pmcreg(interp, parrot_reg, testpmc);
 
     newpmc    = Parrot_get_pmcreg(interp, parrot_reg);
-    new_value = Parrot_PMC_get_intval(interp, newpmc);
+    new_value = Parrot_PMC_get_integer(interp, newpmc);
 
     printf("%d\n", (int)new_value);
 
@@ -261,7 +261,7 @@
 -123
 OUTPUT
 
-c_output_is( <<'CODE', <<'OUTPUT', 'PMC_set/get_numval' );
+c_output_is( <<'CODE', <<'OUTPUT', 'PMC_set/get_number' );
 
 #include <stdio.h>
 #include "parrot/embed.h"
@@ -283,8 +283,8 @@
     type    = Parrot_PMC_typenum(interp, "Float");
     testpmc = Parrot_PMC_new(interp, type);
 
-    Parrot_PMC_set_numval(interp, testpmc, value);
-    new_value = Parrot_PMC_get_numval(interp, testpmc);
+    Parrot_PMC_set_number_native(interp, testpmc, value);
+    new_value = Parrot_PMC_get_number(interp, testpmc);
 
     printf("%.7f\n", (double)new_value);
 
@@ -317,7 +317,7 @@
     testpmc = Parrot_PMC_new(interp, type);
 
     value     = Parrot_new_string(interp, "Pumpking", 8, "iso-8859-1", 0);
-    Parrot_PMC_set_string(interp, testpmc, value);
+    Parrot_PMC_set_string_native(interp, testpmc, value);
     new_value = Parrot_PMC_get_string(interp, testpmc);
 
     Parrot_eprintf(interp, "%S\n", new_value);
@@ -329,80 +329,6 @@
 Pumpking
 OUTPUT
 
-c_output_is( <<'CODE', <<'OUTPUT', 'PMC_set/get_cstring' );
-
-#include <stdio.h>
-#include "parrot/embed.h"
-#include "parrot/extend.h"
-
-int
-main(int argc, const char *argv[])
-{
-    Parrot_Interp interp = Parrot_new(NULL);
-    Parrot_Int    type;
-    Parrot_PMC    testpmc;
-    char         *new_value;
-
-    /* Interpreter set-up */
-    if (!interp)
-        return 1;
-
-    type    = Parrot_PMC_typenum(interp, "String");
-    testpmc = Parrot_PMC_new(interp, type);
-
-    Parrot_PMC_set_cstring(interp, testpmc, "Wibble");
-    new_value = Parrot_PMC_get_cstring(interp, testpmc);
-
-    printf("%s\n", new_value);
-
-    Parrot_free_cstring(new_value);
-
-    Parrot_exit(interp, 0);
-    return 0;
-}
-CODE
-Wibble
-OUTPUT
-
-c_output_is( <<'CODE', <<'OUTPUT', 'PMC_set/get_cstringn' );
-
-#include <stdio.h>
-#include "parrot/embed.h"
-#include "parrot/extend.h"
-
-int
-main(int argc, const char *argv[])
-{
-    Parrot_Interp interp = Parrot_new(NULL);
-    Parrot_Int    length = 6;
-    Parrot_Int    type;
-    Parrot_Int    new_len;
-    Parrot_PMC    testpmc;
-    char         *new_value;
-
-    /* Interpreter set-up */
-    if (!interp)
-        return 1;
-
-    type    = Parrot_PMC_typenum(interp, "String");
-    testpmc = Parrot_PMC_new(interp, type);
-
-    Parrot_PMC_set_cstringn(interp, testpmc, "Wibble", length);
-    new_value = Parrot_PMC_get_cstringn(interp, testpmc, &new_len);
-
-    printf("%s\n", new_value);
-    printf("%d\n", (int)(new_len));
-
-    Parrot_free_cstring(new_value);
-
-    Parrot_exit(interp, 0);
-    return 0;
-}
-CODE
-Wibble
-6
-OUTPUT
-
 my ($TEMP, $temp_pasm) = create_tempfile( SUFFIX => '.pasm', UNLINK => 1 );
 
 print $TEMP <<'EOF';


More information about the parrot-commits mailing list