[Top][All Lists]

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

Re: Bison 3.0.5

From: Hans Åberg
Subject: Re: Bison 3.0.5
Date: Tue, 22 May 2018 11:11:39 +0200

> On 22 May 2018, at 08:16, Akim Demaille <address@hidden> wrote:
>> Le 20 mai 2018 à 13:06, Hans Åberg <address@hidden> a écrit :
>>> On 20 May 2018, at 10:44, Akim Demaille <address@hidden> wrote:
>>> I think Bison 3.0.5 is ready.  However, before making it widely
>>> available it would be nice if people could give it a try on their
>>> projects.
>> On MacOS 10.13.4, all tests passed with clang and gcc 7.3.0 (MacPorts), 
>> skipping Java, Doxygen, and on gcc, syncline.
>> When I take down maint [1], the lexer files named bison/src/*-c.c remain. So 
>> it will not compile without fixing the real ones somehow, cf. [2].
>> 1. git clone -b maint https://git.savannah.gnu.org/git/bison.git
>> 2. https://lists.gnu.org/archive/html/help-bison/2018-01/msg00001.html
> These files are expected, all is ok here.
> Your problem is probably that flex was rejected by configure.
> Try to reconfigure.

It worked now, using flex 2.5.37. I have a MacPorts flex 2.6.4, but I do not 
know if that was the culprit. -Yes, Flex has been updated, and there are other 
problems with it.

I was able to use your locations implementaion without the driver in the calc++ 
example. It even works with the flex 2.5.37 C++ header. However, in flex 2.6.4, 
the same named header has changed the istream pointer to an object, meaning 
that if one gets hold of the wrong one, the code will fail, and also any .ll 
code involving lexing istream stacks.

Therefore, I looked on alternatives:

I wrote some DFA/NFA code, and incidentally found the most efficient method 
make action matches via a reverse NFA lookup, cf. [1-3]. 

1. https://gcc.gnu.org/ml/libstdc++/2018-04/msg00032.html
2. https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85472
3. https://gcc.gnu.org/ml/libstdc++/2018-05/msg00015.html

reply via email to

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