mescc: Struct by value.
[mes.git] / build-aux / mes-snarf.scm
index d88ac014147ab4376ac4477099eb53d7756722f8..ae80d412b0436093b803caa8c65bc6fce9d78097 100755 (executable)
@@ -80,19 +80,12 @@ exec ${GUILE-guile} --no-auto-compile -L $HOME/src/mes/build-aux -L build-aux -e
 (define (symbol->source s i)
   (string-append
    (format #f "g_free++;\n")
-   ;; FIXME: g_functions
-   (if GCC?
-       (format #f "g_cells[cell_~a] = scm_~a;\n\n" s s)
-       (string-append
-         (format #f "g_cells[cell_~a].type = scm_~a.type;\n" s s)
-         (format #f "g_cells[cell_~a].car = scm_~a.car;\n" s s)
-         (format #f "g_cells[cell_~a].cdr = scm_~a.cdr;\n\n" s s)))))
+   (format #f "g_cells[cell_~a] = scm_~a;\n\n" s s)))
 
 (define (symbol->names s i)
-  (string-append
-   (if GCC?
-       (format #f "g_cells[cell_~a].car = cstring_to_list (scm_~a.name);\n" s s)
-       (format #f "g_cells[cell_~a].car = cstring_to_list (scm_~a.car);\n" s s))))
+  (if GCC?
+      (format #f "g_cells[cell_~a].car = cstring_to_list (scm_~a.name);\n" s s)
+      (format #f "g_cells[cell_~a].car = cstring_to_list (scm_~a.car);\n" s s)))
 
 (define (function->header f i)
   (let* ((arity (or (assoc-ref (.annotation f) 'arity)
@@ -116,14 +109,7 @@ exec ${GUILE-guile} --no-auto-compile -L $HOME/src/mes/build-aux -L build-aux -e
        (format #f "~a.cdr = g_function;\n" (function-builtin-name f)))
    (format #f "g_functions[g_function++] = fun_~a;\n" (.name f))
    (format #f "cell_~a = g_free++;\n" (.name f))
-   ;; FIXME: g_functions
-   (if GCC?
-       (format #f "g_cells[cell_~a] = ~a;\n\n" (.name f) (function-builtin-name f))
-       (string-append
-         (format #f "g_cells[cell_~a].type = ~a.type;\n" (.name f) (function-builtin-name f))
-         (format #f "g_cells[cell_~a].car = ~a.car;\n" (.name f) (function-builtin-name f))
-         ;;(format #f "g_cells[cell_~a].car = MAKE_STRING (~a.car);\n" (.name f) (function-builtin-name f))
-         (format #f "g_cells[cell_~a].cdr = ~a.cdr;\n\n" (.name f) (function-builtin-name f))))))
+   (format #f "g_cells[cell_~a] = ~a;\n\n" (.name f) (function-builtin-name f))))
 
 (define (function->environment f i)
   (string-append