On 23.04.2016, at 13:21, wm4 <nfx...@googlemail.com> wrote:

> On Sat, 23 Apr 2016 01:16:31 +0200
> Hendrik Leppkes <h.lepp...@gmail.com> wrote:
> 
>> On Sat, Apr 23, 2016 at 1:02 AM, Bruce Dawson
>> <brucedawson-at-google....@ffmpeg.org> wrote:
>>> I've noticed that when CONFIG_W64_DEMUXER is defined to zero that ffmpeg
>>> compiles in a reference to ff_w64_guid_data but doesn't not link w64.o
>>> (which defines that symbol).
>>> 
>>> This normally works because most optimizers discard the reference
>>> to ff_w64_guid_data early enough to not cause a linker failure. However
>>> this assumption means that /Od (debug, unoptimized) and /GL (Link Time Code
>>> Generation - super optimized) builds with VC++ don't work.
>>> 
>> 
>> We require dead code elimination to be available in all build modes,
>> therefor such build settings that do not have it are not supported.
>> This is not the only place that uses this, and its a design decision
>> to rely on it, therefor we won't be accepting patches to change that
>> at this time, sorry.
> 
> Why not? Someone just volunteered to cleanup this non-sense, so why not
> let them?

Because it ends up with a horrible ifdef mess and also means that disabled 
parts will not even be checked for syntax.
I.e. the reasons why we did it this way.

> We may have been arguing that every compiler supports this level of
> DCE, but experience has been clearly showing that this is not always the
> case due to various reasons.

I don't that was quite the argument. It is more a question if the rare cases 
are really worth the cost, especially when also the compilers could be changed 
to support this method of code configuration.
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to