This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: ICE in change_address at emit_rtl.c
- From: Gabriel Dos Reis <gdr at codesourcery dot com>
- To: Mark Mitchell <mark at codesourcery dot com>
- Cc: Neil Booth <neil at daikokuya dot demon dot co dot uk>, Gabriel Dos Reis <gdr at codesourcery dot com>, Zack Weinberg <zack at codesourcery dot com>, Gerald Pfeifer <pfeifer at dbai dot tuwien dot ac dot at>, Craig Rodrigues <rodrigc at mediaone dot net>, "gcc at gcc dot gnu dot org" <gcc at gcc dot gnu dot org>
- Date: 24 Nov 2001 23:37:01 +0100
- Subject: Re: ICE in change_address at emit_rtl.c
- Organization: CodeSourcery, LLC
- References: <72730000.1006640472@warlock.codesourcery.com>
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