Re: CTL bug/implementation issue

Florian Kainz <[email protected]> Tue, 03 Jul 2007 15:43:24 -0700
Newsgroups gmane.comp.video.openexr.user
Message-ID <[email protected]>
Hi Gonzalo,

in CTL you fix duplicate names the same way as in C:
either make the variable names unique, for example, by
using a prefix, or, if you want a variable that is shared
by two transforms, move the variable into a separate CTL
module that is then imported by both transforms.

We may at some point add support for unnamed namespaces.

The duplicate variable in transform_DPX_EXR.ctl and
transform_RRT.ctl is an oversight and should be fixed.

Florian



gga wrote:
> CTL constant variables seem to not be namespace/context/file safe.
> Attempting to load two files with similarly named static const variables
> will result in an exception, like:
> 
> Name rec709 has already been defined in current scope. (@error28)
> terminate called after throwing an instance of 'Ctl::LoadModuleExc'
> 
> This problem can be reproduced easily by trying to load, for example,
> both the sample transform_DPX_EXR.ctl and the transform_RRT.ctl files.
> Both contain their own (identical) rec709 static variable implementation.
> 
> It is unclear from the ctl docs how this is to be worked around.
>