[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#942059: gcc-9-cross: uses “long” as “time_t” leading to failure on most new 32-bit architectures



Control: severity -1 important
Control: reassign -1 src:gcc-9-cross-ports

As always, I appreciate your detailed analysis, level of detail (including the gcc-9-source version number), and thoroughly written bug report. No, most 32bit archs build fine, it's just x32 having that issue.

On 09.10.19 19:13, Thorsten Glaser wrote:
Source: gcc-9-cross
Version: 12
Severity: serious
Tags: ftbfs
Justification: fails to build from source (but built successfully in the past)


x86_64-linux-gnux32-g++-9 -fno-PIE -c -g -I-I../../src/gcc/gm2 -Igm2 -I../../src/gcc/gm2/gm2-gcc -Igm2/gm2-gcc   -g -O2 -DIN_GCC  -DCROSS_DIRECTORY_STRUCTURE   -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual    -DHAVE_CONFIG_H -I. -Igm2 -I../../src/gcc -I../../src/gcc/gm2 -I../../src/gcc/../include -I../../src/gcc/../libcpp/include  -I../../src/gcc/../libdecnumber -I../../src/gcc/../libdecnumber/bid -I../libdecnumber -I../../src/gcc/../libbacktrace   -I. -Igm2 -I../../src/gcc -I../../src/gcc/gm2 -I../../src/gcc/../include -I../../src/gcc/../libcpp/include  -I../../src/gcc/../libdecnumber -I../../src/gcc/../libdecnumber/bid -I../libdecnumber -I../../src/gcc/../libbacktrace  ../../src/gcc/gm2/gm2-lang.c -o gm2/gm2-lang.o
../../src/gcc/gm2/m2.flex: In function 'void handleDate()':
../../src/gcc/gm2/m2.flex:354:24: error: cannot convert 'long int*' to 'time_t*' {aka 'long long int*'}
   354 |   time_t  clock = time((long *)0);
       |                        ^~~~~~~~~
       |                        |
       |                        long int*
In file included from ../../src/gcc/system.h:337,
                  from ../../src/gcc/gm2/gm2-gcc/gcc-consolidation.h:23,
                  from ../../src/gcc/gm2/m2.flex:22:
/usr/include/time.h:75:29: note:   initializing argument 1 of 'time_t time(time_t*)'
    75 | extern time_t time (time_t *__timer) __THROW;
       |                     ~~~~~~~~^~~~~~~
make[5]: *** [../../src/gcc/gm2/Make-lang.in:1124: gm2/gm2-compiler-boot/m2flex.o] Error 1



Reply to: