Manx vs. SAS/Lattice

Peter da Silva peter at sugar.hackercorp.com
Mon Apr 22 20:38:49 AEST 1991


In article <stephen.672004888 at cia.docs.uu.se> stephen at cia.docs.uu.se (Stephen Cooper) writes:
> {
>   SHORT xy[MAXPOINTS * 2];
>   struct Border BezierBorder =
>   {0, 0, 1, 0, COMPLEMENT, MAXPOINTS, &xy, NULL};

I think this is an illegal auto aggregate initialization. I'm surprised it
let you get away with it. I'm crossposting to comp.lang.c so the language
lawyers can have at it.

> {
>   SHORT xy[MAXPOINTS * 2];
>   struct Border BezierBorder =
>   {0, 0, 1, 0, COMPLEMENT, MAXPOINTS, NULL, NULL};

At least here the aggregate is a constant, that it can copy in. I'm still
surprised it worked. I wouldn't code like that. Try making xy and BezierBorder
static.
-- 
Peter da Silva.   `-_-'
<peter at sugar.hackercorp.com>.



More information about the Comp.lang.c mailing list