This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: distro test rebuild using GCC 6


On Thu, Jan 14, 2016 at 05:15:29PM +0000, James Greenhalgh wrote:
> On Wed, Jan 13, 2016 at 02:17:16PM +0100, Matthias Klose wrote:
> > Here are some first results from a distro test rebuild using GCC 6.
> > A snapshot of the current Ubuntu development series was taken on
> > 20151218 for all architectures (amd64, arm64, armhf, i386/i686,
> > powerpc, ppc64el, s390x), and rebuilt unmodified using the current
> > GCC 5 branch, and using GCC 6 20160101 (then updated to 20160109).
> > 
> > I haven't yet looked into the build failures except for the ICEs.
> > If somebody wants to help please let me know so that work isn't
> > duplicated.
> 
> I've flicked through the 42 unique arm64 failures and given them a
> first-step triage. The majority of issues look to be source based and
> more than a few can be blamed on the move to C++14. Two of these I don't
> understand (qutecom_2.2.1+dfsg1-5.2ubuntu2, sitplus_1.0.3-4.1build1). The
> VLC one is strange, and I don't know how it has ever managed to build!

Hi,

Today I've looked at the 30 unique armhf failures and given them the same
treatment as arm64. Some of the testsuite failures I can't find details or
reports of online so may be indicative of wrong-code bugs. Other than that
there are a larger number of ICEs for the ARM port, but these are logged
and actively being worked on. A number of packages have not made a
clean transition to C++14 and some build failures I just don't understand
how they could ever have worked.

As before, I generated the list of failures with:

  grep xenial-armhf 00list | cut -f 1 -d " " | sed "s@^@http://people.canonical.com/~doko/tmp/gcc6-regr/@"; | xargs wget

Triage notes follow...

Hope this helps. Please do let me know if there is something more useful I
could do instead.

Thanks,
James

----
Eliminating First order junk with "grep -v GPG" to remove error lines
that looked like:

  W: GPG error: http://ppa.launchpad.net xenial InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 1E9377A2BA9EF27F

Has no effect.

----
Looking for testsuite failures and environment issues, I see:

  guile-1.8_1.8.8+1-10ubuntu1

    [ Testsuite failures... ]

    ERROR: Value out of range -9223372036854775808 to 9223372036854775807: -9223372036854775808
    FAIL: test-num2integral
    fail: scm_is_signed_integer ((- (expt 2 63)), -9223372036854775808, 9223372036854775807) == 1
    FAIL: test-conversion
    ==================================
    2 of 16 tests failed

  haskell-cipher-aes_0.2.11-1

    [ Testsuite failures, look bad... ]

         AE1: [Failed]
    expected: AuthTag "(Pd/\168\139\171!*g\SUB\151Hi\165l"
     but got: AuthTag "u:\252\SYN\141\165\&0\186S\191\GS\151\SYN\198E{"
         AD1: [Failed]
    expected: AuthTag "(Pd/\168\139\171!*g\SUB\151Hi\165l"
     but got: AuthTag "r\205\252\225Sz0e\EM\203\GS\227\228lE\209"

      { ... etc ... }

             Properties   Test Cases    Total        
     Passed  34           146           180          
     Failed  0            26            26           
     Total   34           172           206          
    Test suite test-cipher-aes: FAIL
    Test suite logged to: dist-ghc/test/cipher-aes-0.2.11-test-cipher-aes.log
    0 of 1 test suites (0 of 1 test cases) passed.

  haskell-cryptohash_0.11.6-4build1

    [ Testsuite failures, look bad... ]

        SHA1
      0 one-pass:  FAIL
        expected: "da39a3ee5e6b4b0d3255bfef95601890afd80709"
         but got: "5a600060e4e200e24faa00aa71e400e456c400c4"
      0 inc 1:     FAIL
        expected: "da39a3ee5e6b4b0d3255bfef95601890afd80709"
         but got: "5a600060e4e200e24faa00aa71e400e456c400c4"
      0 inc 2:     FAIL
        expected: "da39a3ee5e6b4b0d3255bfef95601890afd80709"
         but got: "5a600060e4e200e24faa00aa71e400e456c400c4"

      { ... etc ... }

    176 out of 592 tests failed
    Test suite test-kat: FAIL
    0 of 1 test suites (0 of 1 test cases) passed.

  kdelibs4support_5.15.0-0ubuntu2

    [ Symbol mismatch ]

    dpkg-gensymbols: warning: debian/libkf5kdelibs4support5/DEBIAN/symbols doesn't match completely debian/libkf5kdelibs4support5.symbols
    +#MISSING: 5.15.0-0ubuntu2# (arch=armhf ppc64el)_ZN3KDE4statERK7QStringP4stat@Base 5.13.0

  kjsembed_5.15.0-0ubuntu2

    [ Symbol mismatch ]

    dpkg-gensymbols: warning: debian/libkf5jsembed5/DEBIAN/symbols doesn't match completely debian/libkf5jsembed5.symbols
    +#MISSING: 5.15.0-0ubuntu2# _ZN3KJS7JSValueD0Ev@Base 4.96.0
    +#MISSING: 5.15.0-0ubuntu2# _ZN3KJS7JSValueD1Ev@Base 4.96.0
    +#MISSING: 5.15.0-0ubuntu2# _ZN3KJS7JSValueD2Ev@Base 4.96.0

  linux-flo_3.4.0-5.19
  linux-hammerhead_3.4.0-1.9
  linux-mako_3.4.0-7.41

    [ Mystery build failure (looks like: https://lkml.org/lkml/2012/11/18/159 ) ]

    Can't use 'defined(@array)' (Maybe you should just omit the defined()?) at /«PKGBUILDDIR»/kernel/timeconst.pl line 373.
    make[3]: *** [kernel/timeconst.h] Error 255
    make[3]: *** Waiting for unfinished jobs....
    /«PKGBUILDDIR»/kernel/Makefile:129: recipe for target 'kernel/timeconst.h' failed

---
-Wnarrowing

This covers two failures:
  
  blender_2.75.a+dfsg0-2ubuntu3

    /«BUILDDIR»/blender-2.75.a+dfsg0/intern/ghost/intern/GHOST_WindowX11.cpp:159:1: error: narrowing conversion of '2547014912ll' from 'long long int' to 'long int' inside { } [-Wnarrowing]
     };
     ^

  burp_1.3.48-4.1

    conf.c:557:1: error: narrowing conversion of '2240043254u' from 'unsigned int' to 'long int' inside { } [-Wnarrowing]
     };
     ^

---
That leaves 20 build failures...

  android-audiosystem_1.8+13.10.20130807-0ubuntu1

    [ C++11 incompatibility ]


    ../../include/utils/Unicode.h:25:18: error: redeclaration of C++ built-in type 'char32_t' [-fpermissive]
     typedef uint32_t char32_t;
                      ^~~~~~~~

  freeorion_0.4.5-1build1

    [ Boost failure (unknown reason) ]

    /«PKGBUILDDIR»/network/ServerNetworking.cpp:194:0:   required from here
    /usr/include/boost/function/function_template.hpp:159:11: error: no match for call to '(std::tuple<const boost::function<void()>&>) ()'
               BOOST_FUNCTION_RETURN((*f)(BOOST_FUNCTION_ARGS));
               ^

  frobtads_1:1.2.3-1


    [ Not c++14 clean ]

    In file included from /«PKGBUILDDIR»/./tads3/tcprs.cpp:39:0:
    /«PKGBUILDDIR»/./tads3/vmbignum.h: In static member function 'static vm_obj_id_t CVmObjBigNum::create(int, const bignum_t<prec>*)':
    /«PKGBUILDDIR»/./tads3/vmbignum.h:585:45: error: exception cleanup for this placement new selects non-placement operator delete [-fpermissive]
             new (vmg_ id) CVmObjBigNum(vmg_ prec);
                                                 ^
    
    <built-in>: note: 'void operator delete(void*, unsigned int)' is a usual (non-placement) deallocation function in C++14 (or with -fsized-deallocation)
    /«PKGBUILDDIR»/./tads3/vmbignum.h: In static member function 'static vm_obj_id_t CVmObjBigNum::create(int, const bignum_t<prec>&)':
    /«PKGBUILDDIR»/./tads3/vmbignum.h:596:45: error: exception cleanup for this placement new selects non-placement operator delete [-fpermissive]
             new (vmg_ id) CVmObjBigNum(vmg_ prec);
                                             ^

  gambas3_3.5.4-2ubuntu11

    [ Not c++14 clean ]

    In file included from CImage.h:27:0,
                     from main.cpp:26:
    ../../share/gambas.h:65:18: error: invalid conversion from 'intptr_t {aka int}' to 'GB_DESC*' [-fpermissive]
      #define __null ((intptr_t)0)
                     ~^~~~~~~~~~~~
    
    /usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h:403:14: note: in expansion of macro '__null'
     #define NULL __null
                  ^~~~~~In file included from CImage.h:27:0,
                     from main.cpp:26:
    ../../share/gambas.h:65:18: error: invalid conversion from 'intptr_t {aka int}' to 'GB_DESC*' [-fpermissive]
      #define __null ((intptr_t)0)
                     ~^~~~~~~~~~~~
    
    /usr/lib/gcc/arm-linux-gnueabihf/6/include/stddef.h:403:14: note: in expansion of macro '__null'
     #define NULL __null
                  ^~~~~~

  gmic_1.6.2.0-1build2

    [ ICE: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68021 ]

  gromacs_5.1.1-1

    [ ICE: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69245 ]

  ht_2.1.0-1

    [ ICE: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69175 ]

  ircp-tray_0.7.6-1.1

    [ Source issue, upstream report: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=810562 ]

    /«PKGBUILDDIR»/src/ircp_server.c:204: undefined reference to `OBEX_UnicodeToChar'
    ircp_server.o: In function `new_file':
    /«PKGBUILDDIR»/src/ircp_server.c:273: undefined reference to `OBEX_UnicodeToChar'
    collect2: error: ld returned 1 exit status

  libbpp-qt_2.1.0-1ubuntu2

    [ ICE: Looks like: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68068
      but reproduces on current trunk. Testcase reducer is in progress. ]

  linux-raspi2_4.3.0-1006.6

    [ Source error - Looks unused by manual inspection ]

    /«PKGBUILDDIR»/drivers/char/broadcom/vc_sm/vmcs_sm.c:200:26: error: 'sm_cache_map_vector' defined but not used [-Werror=unused-const-variable]
     static const char *const sm_cache_map_vector[] = {
                              ^~~~~~~~~~~~~~~~~~~

  mrpt_1:1.3.0-1.1

    [ Source error ? (Can't find sources to reproduce) ]

    In file included from /«PKGBUILDDIR»/libs/base/src/math/math.cpp:16:0:
    /«PKGBUILDDIR»/libs/base/include/mrpt/math/distributions.h: In function 'void mrpt::math::confidenceIntervals(const CONTAINER&, typename mrpt::math::ContainerType<VECTORLIKE1>::element_t&, typename mrpt::math::ContainerType<VECTORLIKE1>::element_t&, typename mrpt::math::ContainerType<VECTORLIKE1>::element_t&, double, std::size_t)':
    /«PKGBUILDDIR»/libs/base/include/mrpt/math/distributions.h:204:6: error: no match for 'operator*=' (operand types are 'std::vector<double>' and 'double')
        Hc*=1.0/ mrpt::math::maximum(Hc);
        ~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


  openal-soft_1:1.16.0-3

    [ We changed arm_neon.h to always define intrinsics (suitably guarded
      by target pragmas, the old behaviour was to error if the target
      did not support Neon instructions. This breaks the sort of
      configure auto-detection used by openal-soft - which includes
      arm_neon.h and checks for an error as a proxy for detecting Neon
      support. Consequently, while we don't support Neon under the Ubuntu
      default flags (-march=armv7-a -mfpu=vfpv3-d16), the openal-soft
      configure check detects neon support (no error when including
      arm_neon.h) and tries to build with Neon. This fails as the target
      options don't match. ]

    In file included from /«PKGBUILDDIR»/Alc/mixer_neon.c:3:0:
    /«PKGBUILDDIR»/Alc/mixer_neon.c: In function 'ApplyCoeffsStep':
    /usr/lib/gcc/arm-linux-gnueabihf/6/include/arm_neon.h:6153:1: error: inlining failed in call to always_inline 'vcombine_f32': target specific option mismatch
     vcombine_f32 (float32x2_t __a, float32x2_t __b)
     ^~~~~~~~~~~~
    
  oxide-qt_1.10.3-0ubuntu0.15.10.2

    [ ICE: Almost identical to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69187 ]

  pulseaudio_1:7.1-1ubuntu3

    [ ICE: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69245 ]

  qtads_2.1.6-1

    [ Not C++14 clean ]

    In file included from tads3/tcprs.cpp:39:0:
    tads3/vmbignum.h: In static member function 'static vm_obj_id_t CVmObjBigNum::create(int, const bignum_t<prec>*)':
    tads3/vmbignum.h:585:45: error: exception cleanup for this placement new selects non-placement operator delete [-fpermissive]
             new (vmg_ id) CVmObjBigNum(vmg_ prec);
                                                 ^
    
    In file included from /usr/include/c++/6/bits/stl_construct.h:59:0,
                     from /usr/include/c++/6/bits/stl_tempbuf.h:60,
                     from /usr/include/c++/6/bits/stl_algo.h:62,
                     from /usr/include/c++/6/algorithm:62,
                     from /usr/include/qt4/QtCore/qglobal.h:68,
                     from /usr/include/qt4/QtCore/QtGlobal:1,
                     from src/h_qt.h:8,
                     from tads2/os.h:105,
                     from tads3/tcprs.cpp:30:
    /usr/include/c++/6/new:125:6: note: 'void operator delete(void*, std::size_t)' is a usual (non-placement) deallocation function in C++14 (or with -fsized-deallocation)
     void operator delete(void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
          ^~~~~~~~
    
  simgrid_3.11.1-10ubuntu1

    [ Environment issue ]

    sh: 1: latex: not found

  simutrans_120.1.1+repack-2

    [ Not C++14 clean ]

    besch/bild_besch.cc:53:61: error: exception cleanup for this placement new selects non-placement operator delete [-fpermissive]
      bild_besch_t* besch = new(4 * sizeof(PIXVAL)) bild_besch_t();
                                                                 ^
    
    In file included from /usr/include/c++/6/ext/new_allocator.h:33:0,
                     from /usr/include/arm-linux-gnueabihf/c++/6/bits/c++allocator.h:33,
                     from /usr/include/c++/6/bits/allocator.h:46,
                     from /usr/include/c++/6/string:41,
                     from /usr/include/c++/6/bits/locale_classes.h:40,
                     from /usr/include/c++/6/bits/ios_base.h:41,
                     from /usr/include/c++/6/ios:42,
                     from /usr/include/c++/6/ostream:38,
                     from /usr/include/c++/6/iterator:64,
                     from besch/../display/../utils/for.h:4,
                     from besch/../display/../simtypes.h:9,
                     from besch/../display/../unicode.h:5,
                     from besch/../display/simgraph.h:18,
                     from besch/bild_besch.h:10,
                     from besch/bild_besch.cc:1:
    /usr/include/c++/6/new:125:6: note: 'void operator delete(void*, std::size_t)' is a usual (non-placement) deallocation function in C++14 (or with -fsized-deallocation)
     void operator delete(void*, std::size_t) _GLIBCXX_USE_NOEXCEPT
          ^~~~~~~~
    
  trafficserver_5.3.0-2ubuntu1

    [ Source error, seen upstream: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=805166 ]

  vbrfix_0.24-7

    [ Source error, not sure how this ever worked! ]

    In file included from vbrfix.h:22:0,
                     from vbrfix.cpp:17:
    wputil.h: In static member function 'static bool wfile::copyFile(const char*, const char*, bool)':
    wputil.h:202:28: error: cannot convert 'std::basic_ostream<char>' to 'bool' in return
         return out << in.rdbuf();
                                ^
    
  volk_1.1.1-5
  
    [ ICE: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69245 ]


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]