guile-devel
[Top][All Lists]
Advanced

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

compile fixen


From: Andy Wingo
Subject: compile fixen
Date: Sun, 09 Oct 2005 21:41:03 +0200

Hello,

Just updated an ancient checkout of guile 1.7. The attached patch fixes
a bug caught by my compiler.

Also the build stopped when building the texinfo files, because I had no
version.texi. I had to make stamp-vti in the doc/ref and doc/tut dirs to
make the version.texi files, but that gives today as being when it was
updated, which is incorrect. Suggest adding those files to CVS.

Cheers,

Wingo.
? guile-compile-diff
? ice-9/debugger/breakpoints/Makefile.in
? libltdl/COPYING.LIB
? libltdl/Makefile.am
? libltdl/Makefile.in
? libltdl/README
? libltdl/aclocal.m4
? libltdl/autom4te.cache
? libltdl/config-h.in
? libltdl/config.guess
? libltdl/config.sub
? libltdl/configure
? libltdl/configure.ac
? libltdl/install-sh
? libltdl/ltdl.c
? libltdl/ltdl.h
? libltdl/ltmain.sh
? libltdl/missing
Index: libguile/ChangeLog
===================================================================
RCS file: /cvsroot/guile/guile/guile-core/libguile/ChangeLog,v
retrieving revision 1.2302
diff -u -r1.2302 ChangeLog
--- libguile/ChangeLog  5 Oct 2005 00:36:04 -0000       1.2302
+++ libguile/ChangeLog  9 Oct 2005 19:40:13 -0000
@@ -1,3 +1,8 @@
+2005-10-09  Andy Wingo  <address@hidden>
+
+       * script.c (scm_find_executable): Compile fix -- fgetc returns an
+       unsigned char cast to an int, or -1 for EOS.
+
 2005-09-05  Marius Vollmer  <address@hidden>
 
        * print.h (SCM_PRINT_KEYWORD_STYLE_I, SCM_PRINT_KEYWORD_STYLE):
Index: libguile/script.c
===================================================================
RCS file: /cvsroot/guile/guile/guile-core/libguile/script.c,v
retrieving revision 1.73
diff -u -r1.73 script.c
--- libguile/script.c   23 May 2005 19:57:21 -0000      1.73
+++ libguile/script.c   9 Oct 2005 19:40:14 -0000
@@ -120,7 +120,7 @@
 scm_find_executable (const char *name)
 {
   char tbuf[MAXPATHLEN];
-  int i = 0;
+  int i = 0, c;
   FILE *f;
 
   /* fprintf(stderr, "s_f_e checking access %s ->%d\n", name, access(name, 
X_OK)); fflush(stderr); */
@@ -132,16 +132,18 @@
   if ((fgetc (f) == '#') && (fgetc (f) == '!'))
     {
       while (1)
-       switch (tbuf[i++] = fgetc (f))
+       switch (c = fgetc (f))
          {
          case /*WHITE_SPACES */ ' ':
          case '\t':
          case '\r':
          case '\f':
          case EOF:
-           tbuf[--i] = 0;
+           tbuf[i] = 0;
            fclose (f);
            return scm_cat_path (0L, tbuf, 0L);
+          default:
+            tbuf[i++] = c;
          }
     }
   fclose (f);

reply via email to

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