[Top][All Lists]

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

Re: too many warnings from Bison CVS for Pike

From: Hans Aberg
Subject: Re: too many warnings from Bison CVS for Pike
Date: Tue, 21 Feb 2006 09:59:38 +0100

On 21 Feb 2006, at 09:41, Akim Demaille wrote:

One can disable the dynamic stack, and use it with non-POD's, which I suspect some do.

What evidence do you have to sustain this claim?  Based on the
message I've seen, I believe the opposite.  People, like me
years ago, know that you can have C code manipulate C++ structures
properly as long as they are PODs.  Trying to use non PODs in
yacc.c is not supported, that's the role of lalr1.cc.  I'll
write a piece of documentation about this.

The question of using non-POD's in the C-parser is not relevant, as it will not be supported. I think though this C++ issue started off like that, before M4 and C++ skeletons.

This suggests:

  Compiling the C-parser using a C++ compiler

An effort is made to make the C-parser compilable using a C++ standard conforming compiler, as long as the semantic and location types (if used) are POD's. This support may be dropped in future Bison versions.

Seems like a reasonable start.

One could say more, but I deliberately deleted it, in part in order to give the developers maximum freedom, and in part, because C++ users should know what to do. For example, exceptions will typically leak parser stack memory (except when the initial static stack array is used), but this is expected. A section on the C++ parser will give hints of using the C++ parser for proper C++ support, so one does not need direct users to that here.

  Hans Aberg

reply via email to

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