Hi,

I am aware of this issue and suspect the compiler working differently on arm32, 
cf. [1], while the same code successfully compiles on every other architecture.

Does this qualify for an "outlook" tag?

BR,
Gábor

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1077657


On Aug 5, 2024, 18:57, at 18:57, Adrian Bunk <[email protected]> wrote:
>Source: msc-generator
>Version: 8.6.2-1
>Severity: serious
>Tags: ftbfs
>
>https://buildd.debian.org/status/logs.php?pkg=msc-generator&ver=8.6.2-1
>
>...
>In file included from /usr/include/c++/14/vector:66,
>                from ../../../../src/libcgencommon/contour_edge.cpp:54:
>/usr/include/c++/14/bits/stl_vector.h: In instantiation of ‘constexpr
>std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp =
>contour::HoledSimpleContour; _Alloc =
>std::allocator<contour::HoledSimpleContour>]’:
>/usr/include/c++/14/bits/stl_vector.h:531:7:   required from here
>  531 |       vector() = default;
>      |       ^~~~~~
>/usr/include/c++/14/bits/stl_vector.h:369:49: error: invalid use of
>incomplete type ‘class contour::HoledSimpleContour’
>369 |                       _M_impl._M_end_of_storage -
>_M_impl._M_start);
>   |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
>In file included from
>../../../../src/libcgencommon/contour_simple.h:28,
>                 from ../../../../src/libcgencommon/contour.h:29,
>                from ../../../../src/libcgencommon/contour_edge.cpp:58:
>../../../../src/libcgencommon/contour_path.h:40:7: note: forward
>declaration of ‘class contour::HoledSimpleContour’
>   40 | class HoledSimpleContour;
>      |       ^~~~~~~~~~~~~~~~~~
>In file included from /usr/include/c++/14/vector:66,
>                 from ../../../../src/libcgencommon/contour_path.h:28:
>/usr/include/c++/14/bits/stl_vector.h: In instantiation of ‘constexpr
>std::_Vector_base<_Tp, _Alloc>::~_Vector_base() [with _Tp =
>contour::HoledSimpleContour; _Alloc =
>std::allocator<contour::HoledSimpleContour>]’:
>/usr/include/c++/14/bits/stl_vector.h:531:7:   required from here
>  531 |       vector() = default;
>      |       ^~~~~~
>/usr/include/c++/14/bits/stl_vector.h:369:49: error: invalid use of
>incomplete type ‘class contour::HoledSimpleContour’
>369 |                       _M_impl._M_end_of_storage -
>_M_impl._M_start);
>   |                       ~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~
>../../../../src/libcgencommon/contour_path.h:40:7: note: forward
>declaration of ‘class contour::HoledSimpleContour’
>   40 | class HoledSimpleContour;
>      |       ^~~~~~~~~~~~~~~~~~
>../../../../src/libcgencommon/contour_edge.cpp: In member function
>‘std::pair<double, double> contour::Edge::UnboundedBezierDistance(const
>contour::XY&) const’:
>../../../../src/libcgencommon/contour_edge.cpp:1783:70: note: parameter
>passing for argument of type ‘std::pair<double, double>’ when C++17 is
>enabled changed to match C++14 in GCC 10.1
>1783 | std::pair<double, double> Edge::UnboundedBezierDistance(const XY
>&M) const
>|                                                        
>^~~~~
>g++ -DPACKAGE_NAME=\"msc-generator\"
>-DPACKAGE_TARNAME=\"msc-generator\" -DPACKAGE_VERSION=\"8.6.2\"
>-DPACKAGE_STRING=\"msc-generator\ 8.6.2\"
>-DPACKAGE_BUGREPORT=\"[email protected]\" -DPACKAGE_URL=\"\"
>-DPACKAGE=\"msc-generator\" -DVERSION=\"8.6.2\" -DGRAPHVIZ_VER=236
>-DHAVE_STDIO_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1
>-DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_STRINGS_H=1
>-DHAVE_SYS_STAT_H=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_UNISTD_H=1
>-DSTDC_HEADERS=1 -I. -I../../../../src/libcgencommon
>-I../../../../src/libcgencommon/../imported/miniz
>-I/usr/include/libpng16   -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
>-D_TIME_BITS=64 -Wdate-time -D_FORTIFY_SOURCE=2 -DNDEBUG
>-I/usr/include/cairo -I/usr/include/libpng16 -I/usr/include/freetype2
>-I/usr/include/pixman-1  -I/usr/include/graphviz  -std=c++23 -Wall
>-Wextra -g -O2 -ffile-prefix-map=/<<PKGBUILDDIR>>=.
>-fstack-protector-strong -fstack-clash-protection -Wformat
>-Werror=format-security -c -o contour_debug.o
>../../../../src/libcgencommon/contour_debug.cpp
>In file included from ../../../../src/libcgencommon/contour_path.h:32,
>                from ../../../../src/libcgencommon/contour_simple.h:28,
>                 from ../../../../src/libcgencommon/contour.h:29,
>                 from ../../../../src/libcgencommon/contour.cpp:26:
>../../../../src/libcgencommon/contour_edge.h: In member function
>‘std::pair<contour::XY, double> contour::Edge::XMinExtreme() const’:
>../../../../src/libcgencommon/contour_edge.h:672:47: note: parameter
>passing for argument of type ‘std::pair<contour::XY, double>’ when
>C++17 is enabled changed to match C++14 in GCC 10.1
>672 |     std::pair<XY, double> XMinExtreme() const { return
>Extremes<false>()[0]; }
>      |                                               ^
>make[5]: *** [Makefile:474: contour_edge.o] Error 1

Reply via email to