guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Fixing a few C99isms


From: Ludovic Courtès
Subject: Fixing a few C99isms
Date: Wed, 4 May 2005 17:52:51 +0200
User-agent: Mutt/1.5.4i [Guile enabled]

Hi,

Guile 1.7.2 contains a few C99isms, namely local variable declarations
in the middle of a block.  GCC 3 expects C99 by default.  However, older
versions or other compilers may expect raw ANSI code.  Here's a patch
for this.

Thanks,
Ludovic.


--- guile-1.7.2/libguile/gc-card.c~     2005-03-09 22:16:56.000000000 +0100
+++ guile-1.7.2/libguile/gc-card.c      2005-05-04 17:35:25.000000000 +0200
@@ -308,7 +308,9 @@
 
   for (p += offset; p < end; p += span, offset += span)
     {
+      scm_t_bits tag;
       SCM scmptr = PTR2SCM (p);
+
       if (!SCM_C_BVEC_GET (bitvec, offset))
         continue;
 
@@ -312,7 +314,7 @@
       if (!SCM_C_BVEC_GET (bitvec, offset))
         continue;
 
-      scm_t_bits tag = SCM_TYP7 (scmptr);
+      tag = SCM_TYP7 (scmptr);
       if (tag  == scm_tc7_smob)
        {
          tag = SCM_TYP16(scmptr);
@@ -338,12 +340,16 @@
          break;
        }
       
-      SCM tag_as_scm = scm_from_int (tag);
-      SCM current = scm_hashq_ref (hashtab, tag_as_scm, SCM_I_MAKINUM (0));
+      {
+       SCM tag_as_scm, current;
+
+       tag_as_scm = scm_from_int (tag);
+       current = scm_hashq_ref (hashtab, tag_as_scm, SCM_I_MAKINUM (0));
 
       scm_hashq_set_x (hashtab, tag_as_scm,
                       scm_from_int (scm_to_int (current) + 1));
     }
+    }
 }
 
 
--- guile-1.7.2/libguile/gc.c~  2005-03-03 23:12:32.000000000 +0100
+++ guile-1.7.2/libguile/gc.c   2005-05-04 17:18:57.000000000 +0200
@@ -292,10 +292,11 @@
            "Return an alist of statistics of the current live objects. ")
 #define FUNC_NAME s_scm_gc_live_object_stats
 {
+  SCM alist;
   SCM tab = scm_make_hash_table (scm_from_int (57));
   scm_i_all_segments_statistics (tab);
   
-  SCM alist
+  alist
     = scm_internal_hash_fold (&tag_table_to_type_alist, NULL, SCM_EOL, tab);
   
   return alist;
--- guile-1.7.2/libguile/threads.c~     2005-03-09 22:16:56.000000000 +0100
+++ guile-1.7.2/libguile/threads.c      2005-05-04 17:34:58.000000000 +0200
@@ -882,8 +882,8 @@
 "thread.  That is, Guile's mutexes are @emph{recursive}. ")
 #define FUNC_NAME s_scm_lock_mutex
 {
-  SCM_VALIDATE_MUTEX (1, mx);
   char *msg;
+  SCM_VALIDATE_MUTEX (1, mx);
 
   msg = fat_mutex_lock (mx);
   if (msg)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]