You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@httpd.apache.org by Justin Erenkrantz <je...@apache.org> on 2002/09/15 22:31:48 UTC

Reentrant flex was Re: mod_ssl and yacc?

On Sun, Sep 15, 2002 at 12:57:13PM -0700, Aaron Bannert wrote:
> AFAIK, lex can't produce threadsafe or reentrant code. Someone please
> correct me if I'm wrong.

Hmm, it seems that neither flex nor lex can produce reentrant C
scanners.  Flex can produce reentrant C++ scanners though.  And,
flex's man page indicates that its C scanners aren't as reentrant
as lex's.

Bison has an option for using "%pure_parser", but that doesn't get
around the fact that flex/lex aren't reentrant.  (And, yacc doesn't
have this option.)

Should we punt the code in mod_ssl which uses flex/yacc?  But, it
only seems to be used at config-time (for SSLRequire?), so maybe
it isn't really a problem?  -- justin

Re: Reentrant flex was Re: mod_ssl and yacc?

Posted by Henning Brauer <hb...@bsws.de>.
On Sun, Sep 15, 2002 at 01:31:48PM -0700, Justin Erenkrantz wrote:
> On Sun, Sep 15, 2002 at 12:57:13PM -0700, Aaron Bannert wrote:
> > AFAIK, lex can't produce threadsafe or reentrant code. Someone please
> > correct me if I'm wrong.
> 
> Hmm, it seems that neither flex nor lex can produce reentrant C
> scanners.  Flex can produce reentrant C++ scanners though.  And,
> flex's man page indicates that its C scanners aren't as reentrant
> as lex's.

There is no such thing as "the" lex and "the" yacc...

-- 
Henning Brauer, BS Web Services, http://bsws.de
hb@bsws.de - henning@openbsd.org
Unix is very simple, but it takes a genius to understand the simplicity.
(Dennis Ritchie)