Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/5/84; site rochester.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!rochester!quiroz From: quiroz@rochester.UUCP (Cesar Quiroz) Newsgroups: net.lang.c Subject: Re: Re: Breaking out of several nested loops (& ANSI C) Message-ID: <2065@rochester.UUCP> Date: Thu, 11-Oct-84 12:05:02 EDT Article-I.D.: rocheste.2065 Posted: Thu Oct 11 12:05:02 1984 Date-Received: Fri, 12-Oct-84 06:05:07 EDT References: <1801@pegasus.UUCP> <16435@arizona.UUCP> Organization: U. of Rochester, CS Dept. Lines: 53 > Tony Hansens' proposal was to allow labels on loops, like > foo: while (x) > { > ... > .{. > break foo; > .}. > } > > I like the idea of named loops. This syntax is very bad (sorry, Mr. > Hansen). Is foo a legal label? Can one say "goto foo"? Is this fragment > legal? (If so, what does it mean?) > > baz: i += j; > break baz; > I think the proposed syntax is not that bad. First of all, it doesn't introduce a new usage in C, labels are already valid where proposed. Now, the idea requires a simple extension to the semantics of the language, namely: That 'break