Date: prev next · Thread: first prev next last
2013 Archives by date, by thread · List index


On Wed, Jul 10, 2013 at 04:32:33PM +0200, Lionel Elie Mamane wrote:
On Wed, Jul 10, 2013 at 02:27:51PM +0300, Tor Lillqvist wrote:

OS X 10.8 has Bison 2.3 (...) We shouldn't be requiring anything
newer, (...) (Sure, we already have broken that promise a bit as we
require automake and autoconf, but do we *really* need any newer
features of Bison?)

Apparently, the way it is implemented in Bison 2.3 interacts badly
with preprocessor tricks done in sqlbison.y, while it works well for
the implementation in Bison 2.4 and 2.5.

Concretely, the overall problem is that Bison 2.3 puts much (more) of
sqlbison.y in sqlbison.hxx, which is #included in sqlflex.l. This
makes conflicts / pollutes the namespace. There were two compile-time
errors:

1) aEmptyString defined twice. I renamed the one of sqlflex.l

2) the #define SQLyylex from sqlbison.y leaked into sqlflex.lu; I
   "just" #undef it in sqlflex.l; dirty, but should work.

Let's see what our MacOS X tinderbox thinks of this now.

As to the warnings like "defined, but not used", well warnings in
automatically generated code are not something we can/should tackle
"locally" / not worth forcing non-Apple provided bison on our MacOS X
build. I'd suggest forcing -Wno-error on this file; possibly
conditional on the known-problematic bison version(s).


-- 
Lionel

Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.