Bug 44657 - GCC 2.96-85 fails self-test
Summary: GCC 2.96-85 fails self-test
Alias: None
Product: Red Hat Raw Hide
Classification: Retired
Component: gcc   
(Show other bugs)
Version: 1.0
Hardware: i386 Linux
Target Milestone: ---
Assignee: Jakub Jelinek
QA Contact: David Lawrence
Depends On:
TreeView+ depends on / blocked
Reported: 2001-06-15 00:32 UTC by Need Real Name
Modified: 2007-04-18 16:33 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2001-06-25 09:34:41 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

Description Need Real Name 2001-06-15 00:32:23 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (Windows; U; WinNT4.0; en-US; rv:0.9.1) Gecko/20010607

Description of problem:
After an apparently sucessful build of gcc-2.96-85 (current Rawhide), the
self-test of the compiler fails to complete. 

How reproducible:

Steps to Reproduce:
1. rpm -ivh ~/gcc-2.96-85.src.rpm

2. In spec file, replace $RPM_OPT_FLAGS /w "-march=i386 -mcpu=i686 -O2". 
(This makes the default compiler switches explicit; probably not needed.)

3. rpm -bc /usr/src/redhat/SPECS/gcc.spec

4. cd /usr/src/redhat/BUILD/gcc-2.96-20000731/obj-i386-redhat-linux

5. make check

Actual Results:  Source file rdbzmain.c fails to compiler, causing the
self-test to abort:

-B/usr/i386-redhat-linux/bin/ -B/usr/i386-redhat-linux/lib/ -isystem
/usr/i386-redhat-linux/include -march=i386 -mcpu=i686 -O2
-I../../../../libio/dbz -I.. -I../../../../libio/dbz/..
-DDBZ_FINISH='_IO_flush_all()' -DHAVERFCIZE -c rdbzmain.c
rdbzmain.c: In function `doline':
rdbzmain.c:391: conversion to non-scalar type requested
rdbzmain.c:403: conversion to non-scalar type requested
rdbzmain.c: In function `dosweep':
rdbzmain.c:473: conversion to non-scalar type requested
make[3]: *** [rdbzmain.o] Error 1
make[3]: Leaving directory
make[2]: *** [subdir_do] Error 1
make[2]: Leaving directory
make[1]: *** [check] Error 2
make[1]: Leaving directory
make: *** [check-target-libio] Error 2

Expected Results:  Self-test should run to completion without errors.

Additional info:

1. Build was done on a new install of RedHat Linux v7.1.  All development
tools used are those included in this distribution.

2. Build platform is an AMD K6-2/333MHz with 160MB RAM.

Comment 1 Need Real Name 2001-06-20 00:26:11 UTC
Same behavior seen in gcc-2.96-88.src.rpm (Rawhide) self-test.

When this file (rdbzmain.c) is removed from the testsuite, the tests run to
completion, though there are many of these complaints:

  runtest --tool xxxxx
  /bin/sh: runtest: command not found
  make[1]: [check-xxxxx] Error 127 (ignored)


Comment 2 Jakub Jelinek 2001-06-25 09:34:37 UTC
The libio test is completely irrelevant, as it is testing part of libio
which is not compiled into libstdc++ nor present in any shipped headers.
To make you sleep well, here is a fix though (will put it into gcc-2.96-94):
2001-06-25  Jakub Jelinek  <jakub@redhat.com>

        * iolibio.h (_IO_pos_BAD): Fix for glibc 2.2+.

--- libio/iolibio.h.jj  Tue Feb 24 21:09:50 1998
+++ libio/iolibio.h     Mon Jun 25 11:37:09 2001
@@ -38,7 +38,7 @@ extern int _IO_obstack_vprintf __P ((str
 extern int _IO_obstack_printf __P ((struct obstack *, const char *, ...));
 #ifndef _IO_pos_BAD
-#define _IO_pos_BAD ((_IO_fpos_t)(-1))
+#define _IO_pos_BAD ((_IO_off_t)(-1))
 #define _IO_clearerr(FP) ((FP)->_flags &= ~(_IO_ERR_SEEN|_IO_EOF_SEEN))
 #define _IO_fseek(__fp, __offset, __whence) \
As for the missing runtest errors, that's user error, you should install
dejagnu first. Without dejagnu, you're not testing the compiler at all
(I do compiler regression testing on every single gcc rpm FYI).

Comment 3 Jakub Jelinek 2001-07-25 11:57:33 UTC
That patch made it into gcc-2.96-95.

Note You need to log in before you can comment on or make changes to this bug.