GNU bug report logs -
#16008
semantic/grammar-wy.el cannot be bootstrapped
Previous Next
Reported by: Glenn Morris <rgm <at> gnu.org>
Date: Sat, 30 Nov 2013 02:08:02 UTC
Severity: minor
Found in version 24.3.50
Fixed in version 28.1
Done: Glenn Morris <rgm <at> gnu.org>
Bug is archived. No further changes may be made.
Full log
Message #9 received at 16008 <at> debbugs.gnu.org (full text, mbox):
Glenn Morris writes:
> semantic/grammar-wy.el is a generated file and therefore ideally should
> not be kept in the Emacs VCS.
That's true for all parsers. However, grammar-wy.el is special, as
you've noticed.
> It is generated by semantic/grammar.el.
> semantic/grammar.el requires semantic/grammar-wy.el, therefore
> it is not possible to bootstrap without semantic/grammar-wy.el already
> present.
Yes, it has a circular dependency, because the parser grammar-wy.el
parses grammar files, including itself. In upstream, we have a fallback
parser for this, which is used when grammar-wy.el is not present
yet. Needless to say, you'll soon face chicken/egg problems when you do
changes in grammar.wy, which IMHO cause more pain in the rear than
having generated files under version control. In fact, every time I
worked on grammar.wy, I thought about getting rid of bootstrapping at
compile time and just put all parsers under version control.
> I should also note that the version of semantic/grammar-wy.el in the
> Emacs trunk does not match up with its sources.
>
> It contains:
>
> (require 'semantic)
>
> Yet if you regenerate it, it contains:
>
> (require 'semantic/lex)
> (eval-when-compile (require 'semantic/bovine))
Yes, there may be small differences w.r.t. to requires and such. The
generated parsers should never differ, though.
Problem is: the freeze is near, and I have to do another sync with
upstream, and I'd also really like to get a few things fixed before
that.
-David
This bug report was last modified 4 years and 117 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.