Author: leo
Date: Mon Nov 14 12:37:00 2005
New Revision: 9974

Modified:
   trunk/classes/parrotinterpreter.pmc
   trunk/src/string.c
Log:
added some source comments wrt
* utf8:unicode:"foo"
* interpreter freeze/thaw

Modified: trunk/classes/parrotinterpreter.pmc
==============================================================================
--- trunk/classes/parrotinterpreter.pmc (original)
+++ trunk/classes/parrotinterpreter.pmc Mon Nov 14 12:37:00 2005
@@ -612,7 +612,29 @@ Finish thawing.
 
     void visit(visit_info *info) {
         PMC **pos;
-        /* 1. HLL_info */
+        /*
+         * the information frozen here is part of all PBCs
+         * we probably need to freeze all dynamic extensible
+         * mappings (or at least the dynamic part)
+         * e.g.
+         *    charsets   idx - name
+         *    encodings  idx - name
+         *    pmc types  idx - name
+         *    dynamic oplibs    opcode nr - opname
+         *
+         * The machine thawing this info still needs to load
+         * these extensions, but the order of loading could be
+         * relaxed.   
+         * 
+         * creating all these info as standard PMCs would vastly
+         * simplify this process   
+         *
+         * thaw would then need a merge operation:
+         *  - compare existing for sanity
+         *  - extend new     
+         */
+
+        /*  HLL_info */
         pos = &INTERP->HLL_info;
         info->thaw_ptr = pos;
         /* pass in the existing structure

Modified: trunk/src/string.c
==============================================================================
--- trunk/src/string.c  (original)
+++ trunk/src/string.c  Mon Nov 14 12:37:00 2005
@@ -2397,6 +2397,15 @@ string_unescape_cstring(Interp * interpr
             internal_exception(UNIMPLEMENTED,
                     "Can't make '%s' charset strings", p + 1);
         }
+        /*
+         * XXX this is just wrong
+         *     we still need to unescape the string, then verify
+         *     that it is valid in the passed in encoding
+         *     then append the bytes w/o further processing to
+         *     the string buffer
+         *
+         * that is currently just fixed_8 encodings are correct    
+         */
         result = string_make_direct(interpreter, cstring, clength,
                 encoding, charset, flags);
         string_compute_strlen(interpreter, result);

Reply via email to