It seems reasonable to me as well.  Removing the dynamic exception
specifications would’t even break compatibility with older compilers.

-nick

On Thu, Aug 10, 2017 at 11:52 AM Piotr Stanczyk <piotr.stanc...@gmail.com>
wrote:

> Sounds like a sensible plan to me.
>
> Anyone from ILM care to comment on this? Can you foresee any internal
> build issues?
>
> Piotr
>
> On Thu, Aug 10, 2017 at 11:40 AM Larry Gritz <l...@larrygritz.com> wrote:
>
>> Any vendors that have bought into VFX Platform (Autodesk, Foundry, SESI)
>> should in theory have been on C++11 since last year (and should be on board
>> for C++14 for any products coming in 2018).
>>
>> We're only talking about moving forward, so a stray downstream product
>> stuck on C++03 can keep using OpenEXR <= 2.2.
>>
>> I'll give it a couple days to see if there are objections before I do any
>> of the actual work. But it will be cleaner and easier if we can just assume
>> C++11 as a minimum.
>>
>> -- lg
>>
>>
>> On Aug 10, 2017, at 11:12 AM, Piotr Stanczyk <piotr.stanc...@gmail.com>
>> wrote:
>>
>> Are there any vendors for whom this would cause an issue? Else, I would
>> vote for moving things forward
>>
>>
>> On 10 August 2017 at 10:18, Larry Gritz <l...@larrygritz.com> wrote:
>>
>>> Ugh, so it's worse than I thought.
>>>
>>> I suppose I'm willing to fix and submit a patch to address this.
>>>
>>> Do I need to put in the proper macros to make it compile on everything
>>> from C++03 through 17? Does anybody want to argue for continuing to
>>> maintain C++03 compatibility for future OpenEXR releases, or is it finally
>>> time (six years after the C++ standard and 2+ years after VFXPlatform) to
>>> raise the floor to C++11?
>>>
>>> -- lg
>>>
>>>
>>> On Aug 9, 2017, at 11:38 PM, Werner Benger <wer...@cct.lsu.edu> wrote:
>>>
>>> It should be noted that dynamic expressions are actually forbidden in
>>> C++17, so OpenEXR does no longer compile with GCC 7.1 when std C++17 is
>>> enabled. The highest C++ version that can be used to compile it is C++14,
>>> where it's still just a warning, while in C++17 it's an error. It would be
>>> good to have OpenEXR at least compilable in C++17.  Major C++ libraries
>>> such as QT are using C++11 nowadays, so it seems pretty safe to go beyond
>>> C++03 for modern applications, a lot of things are indeed much easier.
>>>
>>>     Werner
>>>
>>>
>>> On 10.08.2017 00:20, Larry Gritz wrote:
>>>
>>> In a test compile with gcc 7, I get lots of errors of the following ilk:
>>>
>>> /home/travis/build/lgritz/openexr/IlmBase/Imath/ImathVec.h:228:34:
>>> warning: dynamic exception specifications are deprecated in C++11
>>> [-Wdeprecated]
>>>      const Vec2 & normalizeExc () throw (IEX_NAMESPACE::MathExc);
>>>                                   ^~~~~
>>>
>>> I can disable this particular warning, of course, but it's worth noting
>>> that the OpenEXR code base is not C++11 compliant. But in addition to using
>>> some C++03 idioms that are deprecated in C++11, perhaps more importantly,
>>> the code is not taking advantage of new features such as move semantics,
>>> constexpr, nothrow, and others. For the Imath classes especially, using
>>> some of these may actually confer a performance benefit.
>>>
>>> I feel kind of bad pointing this out while not really having the time at
>>> the moment to code up and submit an actual patch myself, but I thought I'd
>>> at least open the topic and see where the community stands on the issue of
>>> how and when to upgrade to C++11 and if it's important for modern OpenEXR
>>> to continue to support C++03. For point of reference, the VFX Reference
>>> Platform [http://www.vfxplatform.com/] dictated C++11 for 2016 and
>>> 2017, and will be C++14 for 2018.
>>>
>>> -- lg
>>>
>>> --
>>> Larry Gritz
>>> l...@larrygritz.com
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Openexr-devel mailing list
>>> Openexr-devel@nongnu.org
>>> https://lists.nongnu.org/mailman/listinfo/openexr-devel
>>>
>>>
>>> --
>>>
>>> ___________________________________________________________________________
>>> Dr. Werner Benger                Visualization Research
>>> Center for Computation & Technology at Louisiana State University
>>> (CCT/LSU)
>>> 2019  Digital Media Center, Baton Rouge, Louisiana 70803
>>> Tel.: +1 225 578 4809 <(225)%20578-4809>                        Fax.: +1
>>> 225 578-5362 <(225)%20578-5362>
>>>
>>>
>>> _______________________________________________
>>> Openexr-devel mailing list
>>> Openexr-devel@nongnu.org
>>> https://lists.nongnu.org/mailman/listinfo/openexr-devel
>>>
>>>
>>> --
>>> Larry Gritz
>>> l...@larrygritz.com
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> Openexr-devel mailing list
>>> Openexr-devel@nongnu.org
>>> https://lists.nongnu.org/mailman/listinfo/openexr-devel
>>>
>>>
>>
>> --
>> Larry Gritz
>> l...@larrygritz.com
>>
>>
>>
>>
>> _______________________________________________
> Openexr-devel mailing list
> Openexr-devel@nongnu.org
> https://lists.nongnu.org/mailman/listinfo/openexr-devel
>
_______________________________________________
Openexr-devel mailing list
Openexr-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/openexr-devel

Reply via email to