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: RFC: Why don't we stop the optimizer pipeline when errorcount > 0?


Diego Novillo <dnovillo@redhat.com> writes:

| I hit an ICE inside an optimizer pass because the code had a glaring syntax 
| error that we diagnosed correctly, but since we kept going, the 
| transformation didn't find the CFG in the assumed state, causing the ICE.
| 
| Is there any reason in particular we don't just make the gate functions 
| return false when errorcount > 0?

none I can see.  We should not try to get into the gimplifier (as the
C++ front-end does) when we know the translation unit is doomed to
fail.  This is an annoying issue, especially in the C++ front-end
(see cp_finish_file) where template instantiations are stubbornly
tried even when we know we won't get a good translation unit out ot it.


-- 
                                                        Gabriel Dos Reis
                                                         gdr@cs.tamu.edu
	Texas A&M University -- Department of Computer Science
	301, Bright Building -- College Station, TX 77843-3112


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