Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!seismo!brl-adm!brl-smoke!gwyn From: gwyn@brl-smoke.ARPA (Doug Gwyn ) Newsgroups: comp.lang.c Subject: Re: does \"volatile\" cover this? Message-ID: <5479@brl-smoke.ARPA> Date: Mon, 5-Jan-87 14:33:42 EST Article-I.D.: brl-smok.5479 Posted: Mon Jan 5 14:33:42 1987 Date-Received: Mon, 5-Jan-87 22:00:16 EST References: <2028@brl-adm.ARPA> Reply-To: gwyn@brl.arpa (Doug Gwyn (VLD/VMB)) Organization: Ballistic Research Lab (BRL), APG, MD. Lines: 25 In article <2028@brl-adm.ARPA> rgenter@j.bbn.com (Rick Genter) writes: > volatile RESULT *r; /* I want a volatile pointer to a > RESULT */ Then you should specify: RESULT *volatile r; The way you had it, it was a pointer to a volatile RESULT. >Unfortunately, every place that I can find that discusses sequence points >refers explicitly to points within expressions. Side effects across multiple >statement boundaries are not discussed, from what I can find. The end of an expression that is not part of another expression is a sequence point (section 3.6 in the current draft). >Now that I've gotten all the preliminary information out of the way, here's the >question. Does the above wording preclude optimizing out the "r = NULL;" Yes, since there is a sequence point after the ;. >Obviously if the most recent draft ($65 :-() has significantly different wording >then my question may be moot. The current draft's wording about sequence points is quite different, although the idea is basically the same.