vile
[Top][All Lists]
Advanced

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

Re: [vile] Two fixes for vile-9.8l


From: Thomas Dickey
Subject: Re: [vile] Two fixes for vile-9.8l
Date: Thu, 27 Mar 2014 20:10:35 -0400
User-agent: Mutt/1.5.20 (2009-06-14)

On Thu, Mar 27, 2014 at 04:59:19PM -0700, Kevin Buettner wrote:
> Hi Tom,
> 
> The patch below addresses two problems.
> 
> The first is that I'm seeing a build error when compiling ada-filt.c
> (which is generated from ada-filt.l).  This is the error:
> 
> flex -t ../../vile-9.8l.hacked/filters/ada-filt.l >> ada-filt.c
> gcc -c -I. -I.. -I../../vile-9.8l.hacked/filters -I../../vile-9.8l.hacked 
> -DHAVE_CONFIG_H  -D_GNU_SOURCE  -D_REENTRANT -I/usr/local/include 
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/lib64/perl5/CORE     
> -DOSMINORVERSION=13  -DNARROWPROTO=1 -DFUNCPROTO=15 -DOSMAJORVERSION=3 -g -O2 
>  -fno-strict-aliasing -pipe -fstack-protector  ada-filt.c
> <stdout>:532:11: error: conflicting types for 'yyget_leng'
> In file included from ../../vile-9.8l.hacked/filters/ada-filt.l:12:0:
> ../../vile-9.8l.hacked/filters/filters.h:238:12: note: previous declaration 
> of yyget_leng' was here
>  extern int yyget_leng (void);
>             ^
> <stdout>:1650:11: error: conflicting types for 'yyget_leng'
> In file included from ../../vile-9.8l.hacked/filters/ada-filt.l:12:0:
> ../../vile-9.8l.hacked/filters/filters.h:238:12: note: previous declaration 
> of yyget_leng' was here
>  extern int yyget_leng (void);
> 
> I see this error on both Fedora 19 and 20.  I don't recall if it was
> a problem in earlier versions.

hmm - I did make changes in 9.8l to allow building with "new" flex
(which I assume you're using).  What's "rpm -qi flex" say?

I can probably fix this -
 
> I "fixed" the problem by disabling the declaration causing the problem.
> I'm sure there's a better fix, though I don't know what it is.
> 
> The second problem is in x11.c.  I found that I would sometimes have
> trouble pasting text into xvile, especially when that text came from
> another xvile session built from the same sources.  I've seen this
> problem ever since vile-9.8j, but I did most of my work on another
> machine (upon which I was running an older version of xvile) and it
> wasn't critical that I fix it until now.
> 
> The problem turned out to be that all atoms obtained from GetAtom()
> had the same value.  This was due to a bunch of missing break
> statments within the switch in ae_names().  It was easy to fix, but
> hard to track down.
> 
> Here's the patch:
> 
> diff -urp vile-9.8l/filters/filters.h vile-9.8l.hacked/filters/filters.h
> --- vile-9.8l/filters/filters.h       2014-03-27 15:40:34.626660422 -0700
> +++ vile-9.8l.hacked/filters/filters.h        2014-03-27 15:55:06.873034191 
> -0700
> @@ -235,7 +235,9 @@ extern FILE *yyget_in (void);
>  extern FILE *yyget_out (void);
>  extern char *yyget_text (void);
>  extern int yyget_debug (void);
> +#if 0
>  extern int yyget_leng (void);
> +#endif
>  extern int yyget_lineno (void);
>  extern int yylex_destroy (void);
>  extern void yyset_debug (int bdebug);
> diff -urp vile-9.8l/x11.c vile-9.8l.hacked/x11.c
> --- vile-9.8l/x11.c   2014-03-27 15:41:01.104338505 -0700
> +++ vile-9.8l.hacked/x11.c    2014-03-27 16:19:47.392022060 -0700
> @@ -6093,7 +6093,7 @@ ae_names(XVileAtom n)
>  {
>      const char *result = 0;
>  
> -#define DATA(name) case ae ## name: result = #name
> +#define DATA(name) case ae ## name: result = #name; break;
>      switch (n) {
>      case aeMAX:
>       break;

ouch - looks like my fault in last spring's changes 

(thanks)

-- 
Thomas E. Dickey <address@hidden>
http://invisible-island.net
ftp://invisible-island.net

Attachment: signature.asc
Description: Digital signature


reply via email to

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