Path: utzoo!attcan!uunet!mcsun!cernvax!hjm
From: hjm@cernvax.UUCP (Hubert Matthews)
Newsgroups: comp.lang.c
Subject: Re: Re^2: Oh noooooo!!
Summary: FORTRAN isn't C (fortunately :->)
Message-ID: <1100@cernvax.UUCP>
Date: 27 Sep 89 14:39:24 GMT
References: <1098@cernvax.UUCP> <14052@lanl.gov>
Reply-To: hjm@cernvax.UUCP (Hubert Matthews)
Organization: CERN European Laboratory for Particle Physics, CH-1211 Geneva, Switzerland
Lines: 21

In article <14052@lanl.gov> Jim Giles writes:
>
>The problem here is that C allows GOTOs in all the same contexts
>that Fortran does.  More importantly, C allows GOTOs that even 
>Fortran doesn't.  For example:
>[... perfectly correct example of C v. FORTRAN GOTOs...]
>So, the optimizer for C _cannot_ be any simpler than that for
>Fortran.

GOTOs are ubiquitous in FORTRAN and uncommon in C.  A FORTRAN compiler
needs to be able to optimise in the face of GOTOs, whereas a C
compiler is rarely called upon so to do.  Data-flow analysis is
complex and the need for it is justified for FORTRAN compilers but not
for C compilers owing to the relative frequencies of occurrence of
GOTOs in the two languages.


-- 
Hubert Matthews      ...helping make the world a quote-free zone...

hjm@cernvax.cern.ch   hjm@vxomeg.decnet.cern.ch    ...!mcvax!cernvax!hjm