POV-Ray : Newsgroups : povray.tools.general : naughty zoot and her semicolons : Re: naughty zoot and her semicolons Server Time
29 Nov 2021 22:30:41 EST (-0500)
  Re: naughty zoot and her semicolons  
From: clipka
Date: 2 Feb 2017 09:31:27
Message: <589342bf$1@news.povray.org>
Am 02.02.2017 um 11:37 schrieb dick balaska:
> I'm stuck on my parser. :(
> 
> I use the colefax spline macro like this.
> #declare fishpath=create_spline(array[3] {<1,2,3>,<2,3,4>,<3,4,5>} 3)
> 
> povclipse2 needs to see it like this.
> #declare fishpath=create_spline(array[3] {<1,2,3>,<2,3,4>,<3,4,5>}, 3);
> 
> povray lets me sneak that comma separator in, but refuses to accept the
> trailing semicolon.
> 
> I don't know how to resolve this.  To me, there is a rule that says
> "start with #declare and run to a ;"  I don't know that it's a funky
> macro at this point, it's just opaque text.  It is the same as
> #declare one=cos(0);

There's a difference: cos() is a function, and is therefore always
well-behaved; create_spline() is a macro, and macros /can/ do extremely
funky stuff that leaves the official parser in a completely different
state than a function would. For example, a macro designed to be used in
a "#declare" may already contain the trailing semicolon, which would be
poor macro style yet perfectly legit. And there are other things that
can interfere.


Post a reply to this message

Copyright 2003-2021 Persistence of Vision Raytracer Pty. Ltd.