Exiv2 / exiv2

Image metadata library and tools
http://www.exiv2.org/
Other
885 stars 279 forks source link

In src/futils.cpp Added #include <cstdint> #2968

Closed bertwim closed 1 month ago

bertwim commented 1 month ago

Added the standard include file containing the declarations of fied width integer type, uint8_t etc.

kmilos commented 1 month ago

Is this now required because of GCC 14 header refactoring?

bertwim commented 1 month ago

Well, can't tell. But without it, my compilation stopped, complaining about the fixed integer types (defined in cstdint>). I use both g++ 13.2.1 and clang++ (18.0.0 and 19.0.0).

Regards, Bertwim

On 16/05/2024 12:18 PM CEST Miloš Komarčević @.***> wrote:

Is this now required because of GCC 14 header refactoring https://gcc.gnu.org/gcc-14/porting_to.html#header-dep-changes?

— Reply to this email directly, view it on GitHub https://github.com/Exiv2/exiv2/pull/2968#issuecomment-2114806690, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABDMW2VXLTU235LO5O6CVTZCSBXRAVCNFSM6AAAAABHZXFKS2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMJUHAYDMNRZGA. You are receiving this because you authored the thread.Message ID: @.***>

kmilos commented 1 month ago

Strange, because our CI runs GCC 13 and Clang 18 already w/o problems, see e.g. these jobs. What system is this?

bertwim commented 1 month ago

Yes, it is strange indeed. I have a Linux OpenSuse leap 15.4 system. I have observed also on other systems (sorry, don't know the details anymore) that apparently compilers sometimes do have different opinions if an earlier indirectly included file is stil 'valid'. It strangely enough may even depend on optimization level, which is also weird.
But don't you think the should be included anyway, as in the same file contents from it is being used? I would call that good practice.

Kind Regards, Bertwim

On 16/05/2024 1:08 PM CEST Miloš Komarčević @.***> wrote:

Strange, because our CI runs GCC 13 and Clang 18 already, see e.g. these jobs https://github.com/Exiv2/exiv2/actions/runs/9096801505. What system is this?

— Reply to this email directly, view it on GitHub https://github.com/Exiv2/exiv2/pull/2968#issuecomment-2114936822, or unsubscribe https://github.com/notifications/unsubscribe-auth/AABDMWZMHYIMB2DXMMJEKLDZCSHTNAVCNFSM6AAAAABHZXFKS2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCMJUHEZTMOBSGI. You are receiving this because you authored the thread.Message ID: @.***>

kmilos commented 1 month ago

But don't you think the should be included anyway, as in the same file contents from it is being used? I would call that good practice.

Sure.

kmilos commented 1 month ago

@mergify backport 0.28.x

mergify[bot] commented 1 month ago

backport 0.28.x

✅ Backports have been created

* [#2969 In src/futils.cpp Added #include (backport #2968)](https://github.com/Exiv2/exiv2/pull/2969) has been created for branch `0.28.x`