Charlene Wendling:

> TL;DR: i can't get libmp4v2 build with C++14.

I'll take your word for it.

> Thanks for this one. There are a lot of them actually: mostly 
> narrowing to int errors, there is an integer overflow somewhere
> i guess, but i can't find it, for example: 
> 
> util/mp4art.cpp:378:14: error: case value evaluates to 4026531846,
> which cannot be narrowed to type 'int' [-Wc++11-narrowing]
> Repeated on lines 378, 382, 391, 395, 402, 406, 413

That starts in libutil/Utility.h with enum LongCode, where _LC_MAX
ends up with the value 0xf0000006.  Then in util/mp4art.cpp,
LC_ART_ANY etc. are defined starting with this value, which doesn't
fit into an int.

> --- Makefile  29 Apr 2019 11:38:17 -0000      1.19
> +++ Makefile  1 May 2019 00:17:13 -0000
> @@ -27,6 +27,9 @@ USE_GMAKE =         Yes
>  MAKE_FILE =          GNUmakefile
>  CONFIGURE_STYLE =    gnu
>  
> +# As of mp4v2-1.9.1, the code is written for c++03, using c++>=11 causes too
> +# many narrowing to int issues in a roll-your-own option management, among
> +# others.
>  CXXFLAGS +=          -std=c++03
>  
>  .include <bsd.port.mk>

ok

-- 
Christian "naddy" Weisgerber                          [email protected]

Reply via email to