Your message dated Mon, 05 May 2014 11:34:09 -0700
with message-id <[email protected]>
and subject line Re: foundry, bison, flex: Circular dependency in generated
has caused the Debian Bug report #714851,
regarding foundry, bison, flex: Circular dependency in generated
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
714851: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=714851
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: foundry,bison,flex
Severity: normal

Hi,

I have a package, "foundry", which generates a number of lexers and
parsers, in each case also using the header file generation and the
options required to build both without any global state.

When I build the package in unstable (flex 2.5.35, bison 2.7.1), I get
build failures[1] because the header file generated from Bison requires
the yyscan_t definition from the flex generated header file, and the
header file generated from flex uses the YYSTYPE definition from the
Bison generated header file. Obviously, one has to go before the other.

The lexer was generated using

%option reentrant

and the parser uses

%pure-parser
%parse-param {yyscan_t scanner}
%lex-param {yyscan_t scanner}

This problem can be worked around by using void * rather than yyscan_t as
the lines above -- nonetheless, a proper solution would be nice.

   Simon

[1]
https://buildd.debian.org/status/fetch.php?pkg=foundry&arch=i386&ver=0.0.20130703-1&stamp=1372849196

-- System Information:
Debian Release: 7.1
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 3.9-1-amd64 (SMP w/8 CPU cores)
Locale: LANG=de_DE.UTF-8, LC_CTYPE=de_DE.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash

Attachment: signature.asc
Description: OpenPGP digital signature


--- End Message ---
--- Begin Message ---
Hi,

        using void* is the recommended method: please see:
http://anonscm.debian.org/gitweb/?p=users/srivasta/debian/flex.git;a=blob;f=tests/test-bison-yylval/parser.y;h=626c5e77491ba7b6e03d455aa63e38a6cedc665d;hb=329e310259378b9c6f0a6be1b73712164dba73fb

http://anonscm.debian.org/gitweb/?p=users/srivasta/debian/flex.git;a=blob;f=tests/test-bison-yylloc/parser.y;h=224d252e6dca163ad39b4bb54a83a01b28818a87;hb=329e310259378b9c6f0a6be1b73712164dba73fb

        I don't think there is a better solution, given the constraints
 of C.

        manoj
-- 
Please keep your hands off the secretary's reproducing equipment.
Manoj Srivastava <[email protected]> <http://www.golden-gryphon.com/>  
4096R/C5779A1C E37E 5EC5 2A01 DA25 AD20  05B6 CF48 9438 C577 9A1C

Attachment: signature.asc
Description: PGP signature


--- End Message ---

Reply via email to