Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!rpi!batcomputer!cornell!johnhlee From: johnhlee@CS.Cornell.EDU (John H. Lee) Newsgroups: comp.sys.amiga.programmer Subject: Re: Manx vs. SAS/Lattice Message-ID: <1991Apr22.203950.20178@cs.cornell.edu> Date: 22 Apr 91 20:39:50 GMT References: <9104021420.AA10848@thunder.LakeheadU.Ca> Sender: news@cs.cornell.edu (USENET news user) Reply-To: johnhlee@cs.cornell.edu (John H. Lee) Organization: Cornell Univ. CS Dept, Ithaca NY 14853 Lines: 47 Nntp-Posting-Host: oboe.cs.cornell.edu In article , stephen@cia.docs.uu.se (Stephen Cooper) writes: > Yet another bug in AztecC 5.0d: (YABIAC? :-) > Compiling this: > > void > DrawCurves (void) > { > SHORT xy[MAXPOINTS * 2]; > struct Border BezierBorder = > {0, 0, 1, 0, COMPLEMENT, MAXPOINTS, &xy, NULL}; ^^^ "&xy" used to be illegal (just use "xy",) but was recently legalized with ANSI C. Perhaps Manx hasn't quite finished ANSI'sizing its compiler yet? > > get_polypoints (DrawBezier, Bezier_Window, &BezierBorder); > return; > } > > will give internal error #40, while compiling this: > > void > DrawCurves (void) > { > SHORT xy[MAXPOINTS * 2]; > struct Border BezierBorder = > {0, 0, 1, 0, COMPLEMENT, MAXPOINTS, NULL, NULL}; > > BezierBorder.XY = xy; ^^ Notice what you did here compared with above. > get_polypoints (DrawBezier, Bezier_Window, &BezierBorder); > return; > } > > is OK. What gives? I mean really -- Internal errors??? > For that?!?! Yup, you're right. There's a bug in the compiler. Perhaps the compiler wanted to report a warning (e.g., "& before array ignored") and the internal error occurs when the compiler tries to report it! ------------------------------------------------------------------------------- The DiskDoctor threatens the crew! Next time on AmigaDos: The Next Generation. John Lee Internet: johnhlee@cs.cornell.edu The above opinions of those of the user, and not of this machine.