[prev in list] [next in list] [prev in thread] [next in thread] 

List:       gcc-bugs
Subject:    Re: conflicting declaration of "frame_offset"
From:       Jeffrey A Law <law () upchuck ! cygnus ! com>
Date:       1999-05-30 20:07:21
[Download RAW message or body]


  In message <37517D41.6788@rcp.co.uk>you write:
  > Hi
  > 
  > I noticed that stmt.c declares "frame_offset" as
  > "extern int" and function.h declares it as 
  > "extern HOST_WIDE_INT".
Actually, you mean function.c declares it as a HOST_WIDE_INT.

  > Can someone put together a obvious trival patch.
I'll take care of it.


  > On the use of explicit externs in *.c files I
  > would like to see them moved to an appropriate 
  > header file and to remove any duplicates.
Nobody disagrees with you.  I think you'll find that this stuff has been
slowing moving out of the .c files, but it takes a long time -- this stuff
has been piling up inside the .c files for 10+ years. 

  > I am not suggesting that the above be done for the
  > egcs-2.95 release, but it is something we should
  > aim to tackle once egcs-2.95 has been released.
I think the frame_offset change does need to get into gcc-2.95.

Consider building on a big endian system where "HOST_WIDE_INT" is a 64bit
quantity and "int" is a 32bit quantity.  The referneces in stmt.c which
use "int" will access the wrong word.  Potentially leading to bogus code
when attempting tail recursion optimizations.

The only reason we haven't been nailed by this is gcc's tail recursion
elimination isn't all that strong.

  > p.s. Jeff. I hope to have the copyright assignment
  > stuff sorted out this week.
Excellent.
jeff

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic