Bug#831173: surf-alggeo: FTBFS with GCC 6: stl_algobase.h:243:56: error: macro "min" passed 3 arguments, but takes just 2

Lucas Nussbaum lucas at debian.org
Thu Jul 14 07:27:44 UTC 2016


Source: surf-alggeo
Version: 1.0.6+ds-2
Severity: serious
Tags: stretch sid
User: debian-qa at lists.debian.org
Usertags: qa-ftbfs-20160713 qa-ftbfs
Justification: FTBFS with GCC 6 on amd64

Hi,

During a rebuild of all packages in sid using the gcc-defaults package
available in experimental to make GCC default to version 6, your package failed
to build on amd64. For more information about GCC 6 and Stretch, see:
- https://wiki.debian.org/GCC6
- https://lists.debian.org/debian-devel-announce/2016/06/msg00007.html

Relevant part (hopefully):
> g++ -DPACKAGE_NAME=\"surf\" -DPACKAGE_TARNAME=\"surf\" -DPACKAGE_VERSION=\"1.0.6\" -DPACKAGE_STRING=\"surf\ 1.0.6\" -DPACKAGE_BUGREPORT=\"endrass at mathematik.uni-mainz.de\" -DPACKAGE_URL=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -D__EXTENSIONS__=1 -D_ALL_SOURCE=1 -D_GNU_SOURCE=1 -D_POSIX_PTHREAD_SEMANTICS=1 -D_TANDEM_SOURCE=1 -DPACKAGE=\"surf\" -DVERSION=\"1.0.6\" -DYYTEXT_POINTER=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DSTDC_HEADERS=1 -DHAVE_INSTANTIATIONS=/\*\*/ -DHAVE_FUNCTION_NONTYPE_PARAMETERS=/\*\*/ -DHAVE_PTHREAD_PRIO_INHERIT=1 -D_REENTRANT=1 -DNO_GUI=1 -DHAVE_PROGRAM_INVOCATION_SHORT_NAME=1 -I. -I../../../yaccsrc  -I../../../src -I../../../curve -I../../../drawfunc -I../../../draw -I../../../dither -I../../../image-formats -I../../../yaccsrc -I../../../mt -I../../../misc -I../../../debug -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -fno-rtti -fno-exceptions -Wall -W -Wwrite-strings -Wpointer-arith -Wconversion -Wno-unused -Woverloaded-virtual -Wno-deprecated -c -o libsurf_parser_a-ExecuteScriptStruct.o `test -f 'ExecuteScriptStruct.cc' || echo '../../../yaccsrc/'`ExecuteScriptStruct.cc
> In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
>                  from /usr/include/c++/6/ios:40,
>                  from /usr/include/c++/6/ostream:38,
>                  from /usr/include/c++/6/iostream:39,
>                  from ../../../yaccsrc/polyx.h:29,
>                  from ../../../yaccsrc/hornerarith.h:38,
>                  from ../../../src/gui_config.h:47,
>                  from ../../../mt/TSDrawingArea.h:32,
>                  from ../../../yaccsrc/ExecuteScriptStruct.cc:29:
> /usr/include/c++/6/bits/stl_algobase.h:243:56: error: macro "min" passed 3 arguments, but takes just 2
>      min(const _Tp& __a, const _Tp& __b, _Compare __comp)
>                                                         ^
> /usr/include/c++/6/bits/stl_algobase.h:265:56: error: macro "max" passed 3 arguments, but takes just 2
>      max(const _Tp& __a, const _Tp& __b, _Compare __comp)
>                                                         ^
> In file included from ../../../src/RgbBuffer.h:65:0,
>                  from ../../../mt/TSDrawingArea.h:31,
>                  from ../../../yaccsrc/ExecuteScriptStruct.cc:29:
> ../../../src/color.h: In member function 'unsigned char colorrgb::getRedByte() const':
> ../../../src/color.h:47:22: warning: conversion to 'unsigned char' from 'int' may alter its value [-Wconversion]
>     return red >= 1.0 ? 255: (int) (red*255);
>            ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~
> ../../../src/color.h: In member function 'unsigned char colorrgb::getGreenByte() const':
> ../../../src/color.h:52:24: warning: conversion to 'unsigned char' from 'int' may alter its value [-Wconversion]
>     return green >= 1.0 ? 255: (int) (green*255);
>            ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~
> ../../../src/color.h: In member function 'unsigned char colorrgb::getBlueByte() const':
> ../../../src/color.h:57:23: warning: conversion to 'unsigned char' from 'int' may alter its value [-Wconversion]
>     return blue >= 1.0 ? 255: (int) (blue*255);
>            ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
> In file included from ../../../src/gui_config.h:42:0,
>                  from ../../../mt/TSDrawingArea.h:32,
>                  from ../../../yaccsrc/ExecuteScriptStruct.cc:29:
> /usr/include/c++/6/bits/stl_algobase.h: At global scope:
> /usr/include/c++/6/bits/stl_algobase.h:195:5: error: expected unqualified-id before 'const'
>      min(const _Tp& __a, const _Tp& __b)
>      ^
> /usr/include/c++/6/bits/stl_algobase.h:195:5: error: expected ')' before 'const'
> /usr/include/c++/6/bits/stl_algobase.h:195:5: error: expected ')' before 'const'
> /usr/include/c++/6/bits/stl_algobase.h:195:5: error: expected ')' before 'const'
> /usr/include/c++/6/bits/stl_algobase.h:195:5: error: expected initializer before 'const'
> /usr/include/c++/6/bits/stl_algobase.h:219:5: error: expected unqualified-id before 'const'
>      max(const _Tp& __a, const _Tp& __b)
>      ^
> /usr/include/c++/6/bits/stl_algobase.h:219:5: error: expected ')' before 'const'
> /usr/include/c++/6/bits/stl_algobase.h:219:5: error: expected ')' before 'const'
> /usr/include/c++/6/bits/stl_algobase.h:219:5: error: expected ')' before 'const'
> /usr/include/c++/6/bits/stl_algobase.h:219:5: error: expected initializer before 'const'
> In file included from /usr/include/c++/6/bits/char_traits.h:39:0,
>                  from /usr/include/c++/6/ios:40,
>                  from /usr/include/c++/6/ostream:38,
>                  from /usr/include/c++/6/iostream:39,
>                  from ../../../yaccsrc/polyx.h:29,
>                  from ../../../yaccsrc/hornerarith.h:38,
>                  from ../../../src/gui_config.h:47,
>                  from ../../../mt/TSDrawingArea.h:32,
>                  from ../../../yaccsrc/ExecuteScriptStruct.cc:29:
> /usr/include/c++/6/bits/stl_algobase.h:243:5: error: 'std::min' declared as an 'inline' variable
>      min(const _Tp& __a, const _Tp& __b, _Compare __comp)
>      ^~~
> /usr/include/c++/6/bits/stl_algobase.h:246:7: error: expected primary-expression before 'if'
>        if (__comp(__b, __a))
>        ^~
> /usr/include/c++/6/bits/stl_algobase.h:246:7: error: expected '}' before 'if'
> /usr/include/c++/6/bits/stl_algobase.h:246:7: error: expected ';' before 'if'
> /usr/include/c++/6/bits/stl_algobase.h:248:7: error: expected unqualified-id before 'return'
>        return __a;
>        ^~~~~~
> /usr/include/c++/6/bits/stl_algobase.h:265:5: error: 'max' declared as an 'inline' variable
>      max(const _Tp& __a, const _Tp& __b, _Compare __comp)
>      ^~~
> /usr/include/c++/6/bits/stl_algobase.h:268:7: error: expected primary-expression before 'if'
>        if (__comp(__a, __b))
>        ^~
> /usr/include/c++/6/bits/stl_algobase.h:268:7: error: expected '}' before 'if'
> /usr/include/c++/6/bits/stl_algobase.h:268:7: error: expected ';' before 'if'
> /usr/include/c++/6/bits/stl_algobase.h:270:7: error: expected unqualified-id before 'return'
>        return __a;
>        ^~~~~~
> /usr/include/c++/6/bits/stl_algobase.h:271:5: error: expected declaration before '}' token
>      }
>      ^
> make[3]: *** [libsurf_parser_a-ExecuteScriptStruct.o] Error 1

The full build log is available from:
   http://people.debian.org/~lucas/logs/2016/07/13/surf-alggeo_1.0.6+ds-2_unstable_gcc6.log

A list of current common problems and possible solutions is available at
http://wiki.debian.org/qa.debian.org/FTBFS . You're welcome to contribute!

About the archive rebuild: The rebuild was done on EC2 VM instances from
Amazon Web Services, using a clean, minimal and up-to-date chroot. Every
failed build was retried once to eliminate random failures.



More information about the debian-science-maintainers mailing list