Newsgroups: comp.std.c
Path: utzoo!henry
From: henry@utzoo.uucp (Henry Spencer)
Subject: Re: Declarations in switches, errors
Message-ID: <1989Sep30.052000.13719@utzoo.uucp>
Organization: U of Toronto Zoology
References: <561@crdos1.crd.ge.COM> <11158@smoke.BRL.MIL> <637@crdos1.crd.ge.COM>
Date: Sat, 30 Sep 89 05:20:00 GMT

In article <637@crdos1.crd.ge.COM> davidsen@crdos1.UUCP (bill davidsen) writes:
>It a feature with limited use even if it did work, but I am bothered by
>anything I can write which is legal but may not work the same way on all
>implementations...

If you want all legal constructs to work the same way in all implementations,
you are in the wrong newsgroup! :-)  C is *full* of things that are
implementation-specific to some degree or other.  The usual reason is
that most programs don't care about characteristic X, but want the code
to run fast, and pinning down characteristic X implies major speed loss
on some machines.

Actually, very few languages have the property you're after.  At the
very least, the detailed properties of floating-point arithmetic are
almost always implementation-defined.

And, as Doug has pointed out, ironically, the behavior of initializers at
the head of a case is not an example of this sort of thing.  Such
initializers *do* *not* get executed in any conforming implementation.
-- 
"Where is D.D. Harriman now,   |     Henry Spencer at U of Toronto Zoology
when we really *need* him?"    | uunet!attcan!utzoo!henry henry@zoo.toronto.edu