This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: ICE in change_address at emit_rtl.c


Mark Mitchell <mark@codesourcery.com> writes:

| --On Friday, November 23, 2001 07:14:38 PM +0000 Neil Booth 
| <neil@daikokuya.demon.co.uk> wrote:
| 
| > Gabriel Dos Reis wrote:-
| >
| >> Neil Booth <neil@daikokuya.demon.co.uk> writes:
| >>
| >> [...]
| >>
| >> | I've not been able to find a satisfactory fix; since I'm not a fan of
| >> | error_mark_node-s I don't want to introduce yet more checks for them.
| >> | I hate the error_mark_node stuff; it would be nice if it could go
| >> | away.
| >>
| >> What should be the alternative?
| 
| A solution I have advocated in the past is to have ERROR_MARK_TYPE,
| ERROR_MARK_DECL, etc.  This would help, since using DECL_ARTIFICIAL,
| say, on the ERROR_MARK_DECL would work.
| 
| Neil's approach is possible as well.
| 
| Neil is right that the current strategy actually makes GCC harder
| to work on, and does little to improve reliability.

I share Neil's sentiment. 

What worries is the alternative he's proposing.  My personnal view is
to have ERROR_MARK_XXX for TYPE, DECL and such in order to enhance
the tree type system and maintainability.  But Neil is proposing to
get rid of those nodes.  Maybe it is appropriate to have an actual
patch to comment on, although I'm skeptical about the long-term
viability of getting rid of ERROR_MARK_XXX thingies.

-- Gaby
CodeSourcery, LLC                       http://www.codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]