Here's some log of a GCC testsuite run; this is from trunk sources, about 2008-10-19.

make -k check
make[1]: Entering directory `/media/data/home/tschwinge/tmp/gcc/trunk.work.build'
make[2]: Entering directory `/media/data/home/tschwinge/tmp/gcc/trunk.work.build/fixincludes'
autogen -T ../../trunk.work/fixincludes/check.tpl ../../trunk.work/fixincludes/inclhack.def
/bin/sh ./check.sh ../../trunk.work/fixincludes/tests/base
Fixed:  testing.h
Fixed:  testing.h
Fixed:  AvailabilityMacros.h
Fixed:  X11/ShellP.h
Fixed:  X11/Xmu.h
Fixed:  Xm/BaseClassI.h
Fixed:  Xm/Traversal.h
Fixed:  ansi/math.h
Fixed:  ansi/stdlib.h
Fixed:  arch/i960/archI960.h
Fixed:  architecture/ppc/math.h
Fixed:  assert.h
Fixed:  bits/huge_val.h
Fixed:  bits/string2.h
Fixed:  bsd/libc.h
Fixed:  c_asm.h
Fixed:  com_err.h
Fixed:  ctrl-quotes-def-1.h
Fixed:  ctype.h
Fixed:  curses.h
Fixed:  errno.h
Fixed:  features.h
Fixed:  fixinc-test-limits.h
Fixed:  hsfs/hsfs_spec.h
Fixed:  ia64/sys/getppdp.h
Fixed:  internal/math_core.h
Fixed:  internal/sgimacros.h
Fixed:  internal/wchar_core.h
Fixed:  inttypes.h
Fixed:  io-quotes-def-1.h
Fixed:  iso/math_c99.h
Fixed:  mach-o/dyld.h
Fixed:  mach-o/swap.h
Fixed:  malloc.h
Fixed:  math.h
Fixed:  netdnet/dnetdb.h
Fixed:  netinet/in.h
Fixed:  netinet/ip.h
Fixed:  obstack.h
Fixed:  pixrect/memvar.h
Fixed:  pthread.h
Fixed:  reg_types.h
Fixed:  regex.h
Fixed:  regexp.h
Fixed:  rpc/auth.h
Fixed:  rpc/rpc.h
Fixed:  rpc/xdr.h
Fixed:  rpcsvc/rstat.h
Fixed:  rpcsvc/rusers.h
Fixed:  signal.h
Fixed:  sparc/asm_linkage.h
Fixed:  standards.h
Fixed:  stdint.h
Fixed:  stdio.h
Fixed:  stdio_tag.h
Fixed:  stdlib.h
Fixed:  string.h
Fixed:  strings.h
Fixed:  sundev/vuid_event.h
Fixed:  sunwindow/win_lock.h
Fixed:  sym.h
Fixed:  sys/asm.h
Fixed:  sys/cdefs.h
Fixed:  sys/file.h
Fixed:  sys/limits.h
Fixed:  sys/machine.h
Fixed:  sys/mman.h
Fixed:  sys/pthread.h
Fixed:  sys/signal.h
Fixed:  sys/socket.h
Fixed:  sys/spinlock.h
Fixed:  sys/stat.h
Fixed:  sys/sysmacros.h
Fixed:  sys/time.h
Fixed:  sys/types.h
Fixed:  sys/ucontext.h
Fixed:  sys/wait.h
Fixed:  testing.h
Fixed:  time.h
Fixed:  tinfo.h
Fixed:  types/vxTypesBase.h
Fixed:  unistd.h
Fixed:  wchar.h

All fixinclude tests pass
make[2]: Leaving directory `/media/data/home/tschwinge/tmp/gcc/trunk.work.build/fixincludes'
make[2]: Entering directory `/media/data/home/tschwinge/tmp/gcc/trunk.work.build/gcc'
test -d testsuite || mkdir testsuite
test -d testsuite/gcc || mkdir testsuite/gcc
(rootme=`${PWDCMD-pwd}`; export rootme; \
        srcdir=`cd ../../trunk.work/gcc; ${PWDCMD-pwd}` ; export srcdir ; \
        cd testsuite/gcc; \
        rm -f tmp-site.exp; \
        sed '/set tmpdir/ s|testsuite|testsuite/gcc|' \
                < ../../site.exp > tmp-site.exp; \
        /bin/sh ${srcdir}/../move-if-change tmp-site.exp site.exp; \
        EXPECT=expect ; export EXPECT ; \
        if [ -f ${rootme}/../expect/expect ] ; then  \
           TCL_LIBRARY=`cd .. ; cd ${srcdir}/../tcl/library ; ${PWDCMD-pwd}` ; \
            export TCL_LIBRARY ; fi ; \
        GCC_EXEC_PREFIX="/home/tschwinge/tmp/gcc/trunk.work.build.install/lib/gcc/" ; export GCC_EXEC_PREFIX ; \
        runtest --tool gcc )
Test Run By tschwinge on Thu Oct 23 08:42:42 2008
Native configuration is i386-unknown-gnu0.3

                === gcc tests ===

Schedule of variations:
    unix

Running target unix
Using /usr/share/dejagnu/baseboards/unix.exp as board description file for target.
Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
Using /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/config/default.exp as tool-and-target-specific interface file.
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.c-torture/compile/compile.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.c-torture/execute/builtins/builtins.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.c-torture/execute/execute.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.c-torture/execute/ieee/ieee.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.c-torture/unsorted/unsorted.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/autopar/autopar.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/charset/charset.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/compat/compat.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/compat/struct-layout-1.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/cpp/cpp.exp ...
FAIL: gcc.dg/cpp/_Pragma3.c -fno-show-column (test for excess errors)
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/cpp/trad/trad.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/debug/debug.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/debug/dwarf2/dwarf2.exp ...
FAIL: gcc.dg/debug/dwarf2/dwarf-die3.c scan-assembler-not DW_AT_inline
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/dfp/dfp.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/dg.exp ...
FAIL: gcc.dg/20021014-1.c (test for excess errors)
FAIL: gcc.dg/cleanup-12.c (test for excess errors)
FAIL: gcc.dg/cleanup-5.c (test for excess errors)
FAIL: gcc.dg/nest.c (test for excess errors)
FAIL: gcc.dg/nested-func-4.c (test for excess errors)
FAIL: gcc.dg/pr32450.c (test for excess errors)
FAIL: gcc.dg/pr33645-3.c scan-assembler-not var1_t
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/fixed-point/fixed-point.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/format/format.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/gomp/gomp.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/graphite/graphite.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/ipa/ipa.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/matrix/matrix.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/noncompile/noncompile.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/pch/pch.exp ...
FAIL: gcc.dg/pch/valid-1b.c -O0 -g -I. (test for excess errors)
FAIL: gcc.dg/pch/valid-1b.c -O0 -g assembly comparison
FAIL: gcc.dg/pch/valid-1b.c  -O0  -I. (test for excess errors)
FAIL: gcc.dg/pch/valid-1b.c  -O0  assembly comparison
FAIL: gcc.dg/pch/valid-1b.c  -O1  -I. (test for excess errors)
FAIL: gcc.dg/pch/valid-1b.c  -O1  assembly comparison
FAIL: gcc.dg/pch/valid-1b.c  -O2  -I. (test for excess errors)
FAIL: gcc.dg/pch/valid-1b.c  -O2  assembly comparison
FAIL: gcc.dg/pch/valid-1b.c  -O3 -fomit-frame-pointer  -I. (test for excess errors)
FAIL: gcc.dg/pch/valid-1b.c  -O3 -fomit-frame-pointer  assembly comparison
FAIL: gcc.dg/pch/valid-1b.c  -O3 -g  -I. (test for excess errors)
FAIL: gcc.dg/pch/valid-1b.c  -O3 -g  assembly comparison
FAIL: gcc.dg/pch/valid-1b.c  -Os  -I. (test for excess errors)
FAIL: gcc.dg/pch/valid-1b.c  -Os  assembly comparison
FAIL: largefile.c -O0 -g -I. (test for excess errors)
FAIL: gcc.dg/pch/largefile.c -O0 -g assembly comparison
FAIL: largefile.c  -O0  -I. (test for excess errors)
FAIL: gcc.dg/pch/largefile.c  -O0  assembly comparison
FAIL: largefile.c  -O1  -I. (test for excess errors)
FAIL: gcc.dg/pch/largefile.c  -O1  assembly comparison
FAIL: largefile.c  -O2  -I. (test for excess errors)
FAIL: gcc.dg/pch/largefile.c  -O2  assembly comparison
FAIL: largefile.c  -O3 -fomit-frame-pointer  -I. (test for excess errors)
FAIL: gcc.dg/pch/largefile.c  -O3 -fomit-frame-pointer  assembly comparison
FAIL: largefile.c  -O3 -g  -I. (test for excess errors)
FAIL: gcc.dg/pch/largefile.c  -O3 -g  assembly comparison
FAIL: largefile.c  -Os  -I. (test for excess errors)
FAIL: gcc.dg/pch/largefile.c  -Os  assembly comparison
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/special/mips-abi.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/special/special.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/struct/struct-reorg.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/tls/tls.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/torture/dg-torture.exp ...
FAIL: gcc.dg/torture/fp-int-convert-float128.c  -O0  (test for excess errors)
FAIL: gcc.dg/torture/fp-int-convert-float128.c  -O1  (test for excess errors)
FAIL: gcc.dg/torture/fp-int-convert-float128.c  -O2  (test for excess errors)
FAIL: gcc.dg/torture/fp-int-convert-float128.c  -O3 -fomit-frame-pointer  (test for excess errors)
FAIL: gcc.dg/torture/fp-int-convert-float128.c  -O3 -g  (test for excess errors)
FAIL: gcc.dg/torture/fp-int-convert-float128.c  -Os  (test for excess errors)
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/torture/stackalign/stackalign.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/tree-prof/tree-prof.exp ...
Running /home/tschwinge/tmp/gcc/trunk.work/gcc/testsuite/gcc.dg/tree-ssa/tree-ssa.exp ...
XPASS: gcc.dg/tree-ssa/20040204-1.c scan-tree-dump-times optimized "link_error" 0
Posted 2009-07-20 11:22:35 UTC Tags: open issue gcc
c++

Modify the cross-compiling shell script to configure GCC for building GCC with C++ support when building its second (i.e., final) version.

Compiling a most-trivial C++ program used to work with GCC 4.2 and 4.3 (and the resulting binaries would also work), but linking fails with GCC SVN trunk:

$ $TARGET-g++ -Wall a.cc -lpthread
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__multf3'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__fixunstfsi'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__subtf3'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__divtf3'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__copysigntf3'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__addtf3'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__lttf2'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__floatsitf'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__netf2'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__floatunsitf'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__eqtf2'
/home/thomas/tmp/gnu-0/lib/gcc/i586-pc-gnu/4.4.0/../../../../i586-pc-gnu/lib/libgcc_s.so: undefined reference to `__fabstf2'
collect2: ld returned 1 exit status

Whether this defect report also applies to a natively-build GCC from SVN trunk has not yet been checked.

Thomas Schwinge suspects the problem to be a configuration issue of a GCC helper library, whose configuration setup has changed after GCC 4.3.

The need for -lpthread is another story. See the Debian glibc patches repository for details.

Posted 2008-12-01 15:36:14 UTC Tags: open issue gcc
License:

GFDL 1.2+

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.

Single-threaded use appears to work:

$ echo 'int main(void) { int *a; a[10]=0; return a[5]; }' | ↩
  gcc -o a -fmudflap -x c - -lmudflap
$ ./a
*******
mudflap violation 1 (check/write): time=1227208721.922064 ptr=0x1023de0 size=4
pc=0x1037a33 location=`<stdin>:1:26 (main)'
      /usr/lib/libmudflap.so.0(__mf_check+0x33) [0x1037a33]
      ./a(main+0x7c) [0x80486c4]
      /usr/lib/libmudflap.so.0(__wrap_main+0x49) [0x1037239]
Nearby object 1: checked region begins 68B before and ends 65B before
mudflap object 0x80ca268: name=`argv[]'
bounds=[0x1023e24,0x1023e2b] size=8 area=static check=0r/0w liveness=0
alloc time=1227208721.922064 pc=0x10371d3
Nearby object 2: checked region begins 76B before and ends 73B before
mudflap object 0x80cb448: name=`environ[]'
bounds=[0x1023e2c,0x1023ed7] size=172 area=static check=0r/0w liveness=0
alloc time=1227208721.922064 pc=0x10371d3
number of nearby objects: 2
*******
mudflap violation 2 (check/read): time=1227208721.942109 ptr=0x1023dcc size=4
pc=0x1037a33 location=`<stdin>:1:35 (main)'
      /usr/lib/libmudflap.so.0(__mf_check+0x33) [0x1037a33]
      ./a(main+0xf3) [0x804873b]
      /usr/lib/libmudflap.so.0(__wrap_main+0x49) [0x1037239]
Nearby object 1: checked region begins 88B before and ends 85B before
mudflap object 0x80ca268: name=`argv[]'
Nearby object 2: checked region begins 96B before and ends 93B before
mudflap object 0x80cb448: name=`environ[]'
number of nearby objects: 2

Multi-threaded use doesn't:

$ echo 'int main(void) { int *a; a[10]=0; return a[5]; }' | ↩
  gcc -include pthread.h -o a -fmudflapth -x c - -lmudflapth -lpthread
$ ./a 
Killed
$ gdb a
[...]
Starting program: /media/data/home/tschwinge/a 

Program received signal EXC_BAD_ACCESS, Could not access memory.
0x01180653 in getenv () from /lib/libc.so.0.3
(gdb) bt
#0  0x01180653 in getenv () from /lib/libc.so.0.3
#1  0x01177a02 in __dcigettext () from /lib/libc.so.0.3
#2  0x01176a57 in dcgettext () from /lib/libc.so.0.3
#3  0x011c03b5 in strerror_r () from /lib/libc.so.0.3
#4  0x01175b57 in __assert_perror_fail () from /lib/libc.so.0.3
#5  0x0111f1ad in cthread_fork (func=0x114f630 <_hurd_msgport_receive>, arg=0x0)
    at /build/buildd/hurd-20080607/build-tree/hurd/libpthread/pthread/cthreads-compat.c:41
#6  0x0115713e in _hurdsig_init () from /lib/libc.so.0.3
#7  0x01140852 in _hurd_proc_init@@GLIBC_2.2.6 () from /lib/libc.so.0.3
#8  0x01140e86 in _hurd_init () from /lib/libc.so.0.3
#9  0x011690ce in init1 () from /lib/libc.so.0.3
#10 0x00001e96 in _dl_start_user () from /lib/ld.so
#11 0x00000001 in ?? ()
#12 0x01024000 in ?? ()
#13 0x00000000 in ?? ()

Also libmudflap is pthread-only.

Posted 2008-11-20 21:16:01 UTC Tags: open issue gcc
License:

GFDL 1.2+

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.

gcc

For GCC trunk:

Debian package has patches (for 4.3). Some have been forwarded upstream. (And have been ignored.) Thomas Schwinge is working on getting them integrated.

Additionally:

  • Configure fragments that have *linux* cases might/should often contain those for us (and GNU/k*BSD) as well.

    • libgcc/configure.ac might need to be aligned for us to the *linux* cases. As well as at the end of libgcc/config.host. Check.

      checking whether decimal floating point is supported... no
      checking whether fixed-point is supported... no
      
    • libgomp/configure.tgt

  • libmudflap.

  • C++.

Posted 2008-10-08 10:53:28 UTC Tags: open issue gcc
License:

GFDL 1.2+

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.

gcc

The GNU Compiler Collection.

  • Open Issues
Posted 2007-11-16 18:08:16 UTC
License:

GFDL 1.2+

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled GNU Free Documentation License.