Path: utzoo!utgpu!water!watmath!clyde!att-cb!att-ih!pacbell!ptsfa!ames!ucsd!sdcsvax!ucsdhub!hp-sdd!hplabs!hpda!hpcupt1!hpisod2!decot From: decot@hpisod2.HP.COM (Dave Decot) Newsgroups: comp.lang.c Subject: Re: Re: The D Programming Language: cases (fallthrough) Message-ID: <2550055@hpisod2.HP.COM> Date: 7 Mar 88 07:41:48 GMT References: <2403@umd5.umd.edu> Organization: Hewlett Packard, Cupertino Lines: 33 > The following example is illustrative syntax only: > > [int *,int] foobar(); > .... > [ptr,flag] = foobar(arg) > int arg; > { > int *a, *b; > .... > return [a,1]; > .... > return [b,0]; > } How about this syntax: struct foo { int *x, y; } foobar(); struct foo foobar(arg) int arg; { int *a, *b; ... return {a, 1}; ... return {b, 0}; } This way, all you're adding to the existing language is aggregate expressions. Dave Decot hpda!decot