flex & gcc 2.95.2

Alexey Voinov voins@caravan.ru
Mon Dec 20 20:30:00 GMT 1999


Hi!

I think I found bug in gcc 2.95.2 code generation.

look at flex generated code( flex -oyylex2.cc yylex2.y ):
----------------------------
.
.
.
static void *yy_flex_alloc YY_PROTO(( yy_size_t ));
static void *yy_flex_realloc YY_PROTO(( void *, yy_size_t ));
.
.
.
#ifdef YY_USE_PROTOS
static void *yy_flex_alloc( yy_size_t size )
#else
static void *yy_flex_alloc( size )
yy_size_t size;
#endif
{
.
.
.
#ifdef YY_USE_PROTOS
static void *yy_flex_realloc( void *ptr, yy_size_t size )
#else
static void *yy_flex_realloc( ptr, size )
void *ptr;
yy_size_t size;
#endif
{
.
.
.
----------------------------
and now assembler code generated by( g++ -S yylex2.cc )
.
.
.
.def    _yy_flex_alloc__FUi@4;  .scl    2;      .type   32;     .endef
_yy_flex_alloc__FUi@4:
                   ^^^ why???
.
.
.
.def    _yy_flex_realloc__FPvUi;        .scl    3;      .type   32;     .endef
_yy_flex_realloc__FPvUi:
.
.
.
----------------------------
I cannot understand why @4 appended to yy_flex_alloc and not appended to
yy_flex_realloc. Functions definitions look same to me.
All calls to yy_flex_alloc are right ( call _yy_flex_alloc__FUi )

Thank you.
Alexey Voinov



--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com



More information about the Cygwin mailing list