| Related articles |
|---|
| [2 earlier articles] |
| Re: Memory leak in flex generated file gneuner2@comcast.net (George Neuner) (2005-10-23) |
| Re: Memory leak in flex generated file johnmillaway@yahoo.com (John Millaway) (2005-10-26) |
| Re: Memory leak in flex generated file Markus.Elfring@web.de (2005-10-26) |
| Re: Memory leak in flex generated file haberg@math.su.se (2005-10-27) |
| Re: Memory leak in flex generated file haberg@math.su.se (2005-10-27) |
| Re: Memory leak in flex generated file johnmillaway@yahoo.com (John Millaway) (2005-10-27) |
| Re: Memory leak in flex generated file johnmillaway@yahoo.com (John Millaway) (2005-10-29) |
| Memory leak in flex generated file pierreir@look.ca (Pierre Innocent) (2007-08-20) |
| Re: Memory leak in flex generated file jnvolkov@gmail.com (commander) (2007-08-21) |
| From: | John Millaway <johnmillaway@yahoo.com> |
| Newsgroups: | comp.compilers |
| Date: | 29 Oct 2005 21:28:34 -0400 |
| Organization: | Compilers Central |
| References: | 05-10-151 |
| Keywords: | lex, storage |
| Posted-Date: | 29 Oct 2005 21:28:34 EDT |
Just so we're clear. There is no memory leak in the flex generated
scanner. There used to be a leak. I fixed it years ago. Don't take my
word for it, here's the code:
/* yylex_destroy is for both reentrant and non-reentrant scanners. */
int yylex_destroy (void)
{
/* Pop the buffer stack, destroying each element. */
while (YY_CURRENT_BUFFER){
yy_delete_buffer (YY_CURRENT_BUFFER );
YY_CURRENT_BUFFER_LVALUE = NULL;
yypop_buffer_state ();
}
/* Destroy the stack itself. */
yyfree ( yy_buffer_stack );
yy_buffer_stack = NULL;
/* Destroy the start condition stack. */
yyfree ( yy_start_stack );
yy_start_stack = NULL;
return 0;
}
-Millaway
Return to the
comp.compilers page.
Search the
comp.compilers archives again.