[EMAIL PROTECTED] writes:

> Solution:
>
> change
> #ifndef YY_NO_INPUT
> to
> #ifdef YY_NO_INPUT
> in
> guile-1.8.4/libguile/c-tokenize.c :656 and :1529
>
> Should work on this error.

But unfortunately it will not continue working in the future!

I believe the correct upstream fix for this is to #define
YY_NO_INPUT.  Although I can't find specific documentation on
YY_NO_INPUT, it makes sense for it to mean "don't compile the input()
function", and Google indicates that others have gone for the #define
YY_NO_INPUT fix too.

So, that's what I've done upstream (for Guile 1.8.5).  That means that
if Debian do adopt the `fix' quoted above for 1.8.4, they will need to
back it out again for 1.8.5.  I recommend instead the change below.

Regards,
     Neil (Guile maintainer)


diff --git a/libguile/c-tokenize.lex b/libguile/c-tokenize.lex
index 1d9b40b..938a5d2 100644
--- a/libguile/c-tokenize.lex
+++ b/libguile/c-tokenize.lex
@@ -18,7 +18,12 @@ INTQUAL              (l|L|ll|LL|lL|Ll|u|U)
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-  
+
+/* Prevent compilation of static input() function in generated scanner
+   code.  This function is never actually used, and GCC 4.3 will emit
+   an error for that. */
+#define YY_NO_INPUT
+
 int yylex(void);
 
 int yyget_lineno (void);




-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to