Updated the C code base so that it compiles with Guile 1.7.2.
authorLudovic Court`es <ludovic.courtes@laas.fr>
Fri, 22 Apr 2005 11:07:06 +0000 (11:07 +0000)
committerLudovic Courtès <ludo@gnu.org>
Fri, 25 Apr 2008 17:09:29 +0000 (19:09 +0200)
* src/*.[ch]:  Introduced changes so that it compiles with Guile 1.7.2.

git-archimport-id: lcourtes@laas.fr--2004-libre/guile-vm--revival--0.6--patch-1

src/envs.c
src/envs.h
src/frames.c
src/frames.h
src/objcodes.c
src/objcodes.h
src/programs.c
src/programs.h
src/vm.c
src/vm_loader.c

index e1e2e36..f1b3cee 100644 (file)
@@ -45,7 +45,7 @@
 #define ENV_OBARRAY_SIZE 31
 
 \f
-scm_bits_t scm_tc16_env;
+scm_t_bits scm_tc16_env;
 
 SCM
 scm_c_make_env (void)
@@ -236,7 +236,8 @@ scm_init_envs (void)
   load_env = scm_eval_closure_lookup (scm_standard_eval_closure (mod),
                                      scm_str2symbol ("load-env"),
                                      SCM_BOOL_T);
-  load_env = SCM_VARVCELL (load_env);
+  load_env = scm_variable_ref (load_env);
+  /* Was: SCM_VARVCELL (load_env); */
 }
 
 /*
index 88884c1..79a410d 100644 (file)
@@ -45,7 +45,7 @@
 #include <libguile.h>
 #include "config.h"
 
-extern scm_bits_t scm_tc16_env;
+extern scm_t_bits scm_tc16_env;
 
 struct scm_env {
   SCM identifier;
index d5525b7..dc216e9 100644 (file)
@@ -43,7 +43,7 @@
 #include "frames.h"
 
 \f
-scm_bits_t scm_tc16_heap_frame;
+scm_t_bits scm_tc16_heap_frame;
 
 SCM
 scm_c_make_heap_frame (SCM *fp)
index 823930b..4647b40 100644 (file)
@@ -88,7 +88,7 @@
  * Heap frames
  */
 
-extern scm_bits_t scm_tc16_heap_frame;
+extern scm_t_bits scm_tc16_heap_frame;
 
 #define SCM_HEAP_FRAME_P(x)    SCM_SMOB_PREDICATE (scm_tc16_heap_frame, x)
 #define SCM_HEAP_FRAME_DATA(f)         ((SCM *) SCM_SMOB_DATA (f))
index cff2721..ad0d2e7 100644 (file)
@@ -56,7 +56,7 @@
  * Objcode type
  */
 
-scm_bits_t scm_tc16_objcode;
+scm_t_bits scm_tc16_objcode;
 
 static SCM
 make_objcode (size_t size)
index 20afd04..ab165f6 100644 (file)
@@ -51,7 +51,7 @@ struct scm_objcode {
   int fd;                      /* file descriptor when mmap'ed */
 };
 
-extern scm_bits_t scm_tc16_objcode;
+extern scm_t_bits scm_tc16_objcode;
 
 #define SCM_OBJCODE_P(x)       (SCM_SMOB_PREDICATE (scm_tc16_objcode, x))
 #define SCM_OBJCODE_DATA(x)    ((struct scm_objcode *) SCM_SMOB_DATA (x))
index 44bbed1..39f43de 100644 (file)
@@ -45,7 +45,7 @@
 #include "vm.h"
 
 \f
-scm_bits_t scm_tc16_program;
+scm_t_bits scm_tc16_program;
 
 static SCM zero_vector;
 
index ca0ab05..70ab54b 100644 (file)
@@ -64,7 +64,7 @@ struct scm_program {
   SCM holder;                  /* the owner of bytecode */
 };
 
-extern scm_bits_t scm_tc16_program;
+extern scm_t_bits scm_tc16_program;
 
 #define SCM_PROGRAM_P(x)       (SCM_SMOB_PREDICATE (scm_tc16_program, x))
 #define SCM_PROGRAM_DATA(x)    ((struct scm_program *) SCM_SMOB_DATA (x))
index 01fafeb..e0904f8 100644 (file)
--- a/src/vm.c
+++ b/src/vm.c
@@ -59,7 +59,7 @@
  * VM Continuation
  */
 
-scm_bits_t scm_tc16_vm_cont;
+scm_t_bits scm_tc16_vm_cont;
 
 
 #define SCM_VM_CONT_P(OBJ)     SCM_SMOB_PREDICATE (scm_tc16_vm_cont, OBJ)
@@ -223,7 +223,7 @@ vm_heapify_frames (SCM vm)
 #undef VM_NAME
 #undef VM_ENGINE
 
-scm_bits_t scm_tc16_vm;
+scm_t_bits scm_tc16_vm;
 
 static SCM the_vm;
 
@@ -471,9 +471,11 @@ SCM_DEFINE (scm_vm_stats, "vm-stats", 1, 0, 0,
 
   SCM_VALIDATE_VM (1, vm);
 
-  stats = scm_c_make_vector (2, SCM_MAKINUM (0));
-  SCM_VELTS (stats)[0] = scm_ulong2num (SCM_VM_DATA (vm)->time);
-  SCM_VELTS (stats)[1] = scm_ulong2num (SCM_VM_DATA (vm)->clock);
+  stats = scm_make_vector (scm_from_int (2), SCM_UNSPECIFIED);
+  scm_vector_set_x (stats, scm_from_int (0),
+                   scm_from_ulong (SCM_VM_DATA (vm)->time));
+  scm_vector_set_x (stats, scm_from_int (1),
+                   scm_from_ulong (SCM_VM_DATA (vm)->clock));
 
   return stats;
 }
index d221ecd..cd2eb21 100644 (file)
@@ -61,8 +61,11 @@ VM_DEFINE_LOADER (load_integer, "load-integer")
 VM_DEFINE_LOADER (load_number, "load-number")
 {
   size_t len;
+
   FETCH_LENGTH (len);
-  PUSH (scm_istring2number (ip, len, 10));
+  PUSH (scm_string_to_number (scm_from_locale_stringn (ip, len),
+                             SCM_UNSPECIFIED /* radix = 10 */));
+  /* Was: scm_istring2number (ip, len, 10)); */
   ip += len;
   NEXT;
 }
@@ -71,7 +74,8 @@ VM_DEFINE_LOADER (load_string, "load-string")
 {
   size_t len;
   FETCH_LENGTH (len);
-  PUSH (scm_makfromstr (ip, len, 0));
+  PUSH (scm_from_locale_stringn (ip, len));
+  /* Was: scm_makfromstr (ip, len, 0) */
   ip += len;
   NEXT;
 }
@@ -189,7 +193,8 @@ VM_DEFINE_LOADER (link, "link")
       /* Create a new variable if not defined yet */
       var = scm_eval_closure_lookup (scm_standard_eval_closure (mod),
                                     sym, SCM_BOOL_T);
-    PUSH (SCM_VARVCELL (var));
+    PUSH (scm_variable_ref (var));
+    /* Was: SCM_VARVCELL (var)); */
     NEXT;
   }
 }