Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #18017

Evaluation Order in Function Declaration

From Shao Miller <sha0.miller@gmail.com>
Newsgroups comp.lang.c
Subject Evaluation Order in Function Declaration
Date 2012-02-28 00:22 -0500
Organization A noiseless patient Spider
Message-ID <jihoad$2pj$1@dont-email.me> (permalink)

Show all headers | View raw


Is the evaluation order guaranteed to be left-to-right for the 
declaration of 'baz' in the following code?  Or are the array size 
expressions unsequenced relative to one another, as in 'a + b'?  Or 
something else?

   #include <stdio.h>

   int foo(void) { puts("foo"); return 1; }
   int bar(void) { puts("bar"); return 1; }

   int baz(int (* x)[foo()], int (* y)[bar()]) { return 0; }

   int main(void) { return baz(0, 0); }

Back to comp.lang.c | Previous | Next — Next in thread | Find similar | Unroll thread


Thread

Evaluation Order in Function Declaration Shao Miller <sha0.miller@gmail.com> - 2012-02-28 00:22 -0500
  Re: Evaluation Order in Function Declaration Jens Gustedt <jens.gustedt@loria.fr> - 2012-02-28 10:14 +0100
    Re: Evaluation Order in Function Declaration Kaz Kylheku <kaz@kylheku.com> - 2012-02-28 09:31 +0000
      Re: Evaluation Order in Function Declaration Jens Gustedt <jens.gustedt@loria.fr> - 2012-02-28 13:09 +0100
  Re: Evaluation Order in Function Declaration pete <pfiland@mindspring.com> - 2012-03-08 08:49 -0500

csiph-web