POV-Ray : Newsgroups : povray.beta-test : ior.inc fails in 3.7.1 beta 3 : Re: ior.inc fails in 3.7.1 beta 3 Server Time
17 Apr 2024 22:00:12 EDT (-0400)
  Re: ior.inc fails in 3.7.1 beta 3  
From: William F Pokorny
Date: 22 Feb 2017 09:21:26
Message: <58ad9e66$1@news.povray.org>
On 02/22/2017 08:07 AM, Kenneth wrote:
>
> Confirmed on Windows 7 (64-bit) as well.
>
> However, the problem seems to be just simple syntax errors in the ior.inc file,
> causing it to fail. Easily fixed (or so it seems!)
>
> One of the new features of v3.71 is the "optional" keyword, for macros. (It's
> *completely* new to me, so I haven't had a chance to figure out how it works.)
> But in POV-Ray's help file, an example is given that's written like this...
>
> #macro Foo(P1, optional P2)
> #ifndef(local.P2) #local P2 = 0; #end // provide default for P2
> .....
> #end
>
> Note the 'dot' before P2.
>
> However, in 3.7.1 beta 3's ior.inc file, there's no 'dot' preceding such an
> 'optional' variable (quite a few of those variables, in fact.) I think that's
> where the fatal error message(s) are coming from.
>
> Instead, such constructs are erroneously(?) written there as
>
> #ifdef(local (disp))    (this is the first error at line 84)
>
> They should be like this, AFAIK...
>
> #ifdef(local.disp)
>
> I did a search-and-replace of all such syntax errors, and the ior.inc file no
> longer fails. (I haven't actually *used* that new ior.inc file yet, though...)
>
>

With commits 2b12beb and e592aaf, November 21, 2016, Christoph replaced 
the  `local()`/`global()` pseudo-functions with `local`/`global` 
pseudo-dictionaries.

I believe your updates to ior.inc should have been implemented at that 
time.

Are you up for submitting a github pull request against the 3.7.1 branch 
with your updates? If not, would you please make your updates available 
here in a scene file newsgroup so someone else might create the pull req 
or otherwise pick up your changes?

Thanks.
Bill P.


Post a reply to this message

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