[Ada] Fix bogus noreturn warning

Joseph S. Myers joseph@codesourcery.com
Sun Jun 27 19:34:00 GMT 2010


On Sun, 27 Jun 2010, Manuel López-Ibáñez wrote:

> I really appreciate what you are trying to do but I insist once more
> that the ideal interface should be first defined somewhere for people
> to read, and then start moving things around to match it. The other

I would strongly advocate incremental development in this area as in 
others.  Small patches can be made that improve modularity in one area 
without needing a much larger design for what the interfaces will end up 
looking like.  It is not necessary to work out the issues with a later 
interface change in order to implement an earlier change.  I didn't need 
to work out how toplev.h and toplev.c should end up getting split up to 
move diagnostics functions to diagnostic-core.h, nor does anyone need such 
a design to change individual files including toplev.h to include 
diagnostic-core.h instead if that's all they needed from toplev.h (or more 
generally to remove unnecessary #includes and fix cases where header A is 
only included for declarations in header B that is included by A).

Working out the ideal interface means understanding what all the 
unexpected interactions are between different parts of the compiler.  I 
claim that to discover such an interaction in practice you generally need 
to try to remove what looks like an inappropriate include and thereby find 
why it is still needed, and that a design not produced in the course of 
incrementally cleaning things up is going to miss many of these issues 
that need resolving in practice.

-- 
Joseph S. Myers
joseph@codesourcery.com


More information about the Gcc-patches mailing list