[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#51484: [PATCH] Move runtime check for recent giflib to compile time
From: |
Eli Zaretskii |
Subject: |
bug#51484: [PATCH] Move runtime check for recent giflib to compile time |
Date: |
Fri, 29 Oct 2021 19:10:30 +0300 |
> From: Stefan Kangas <stefan@marxist.se>
> Date: Fri, 29 Oct 2021 07:42:56 -0700
>
> I'm looking into some bugs in how we handle gifs, and I see that we
> check for GIFLIB_MAJOR at runtime.
Only once, right?
> Is there any reason not to do it at compile-time as in the attached
> patch?
(What patch?)
The compiler converts that into a run-time constant anyway. The
reason for using such "run-time" testing is usually to have a more
readable code, since #ifdef's make the code harder to read. There are
no downsides, since the test is compiled away.
> I expect that GCC is smart enough to see that "5 < 4" is always false
> and optimize this all away, and probably also won't include unused
> static variables, so maybe this doesn't matter. But I think it's nice
> to be a bit more explicit, and I guess it can't hurt to see warnings if
> anyone tries using interlace_start and interlace_increment outside of
> their intended use.
I don't think I understand what scenario you have in mind where having
an #ifdef would be better. Please elaborate.