Opened 9 months ago
Closed 8 months ago
#21507 closed enhancement (fixed)
gcc-15.1 (Wait for LFS)
| Reported by: | Bruce Dubbs | Owned by: | Bruce Dubbs |
|---|---|---|---|
| Priority: | normal | Milestone: | 12.4 |
| Component: | BOOK | Version: | git |
| Severity: | normal | Keywords: | |
| Cc: |
Description
I know we have another ticket (#21500) for package issues with gcc-15, but this is for gcc itself. Using the instructions for gcc-14:
1534.8 Elapsed Time - gcc-15.1.0 md5sum : e55d13c55428bca27b4d2ea02f883135 /usr/src/gcc/gcc-15.1.0.tar.xz 95968 /usr/src/gcc/gcc-15.1.0.tar.xz SIZE (93.718 MB) 12278520 kilobytes BUILD SIZE (11990.742 MB) SBU=17.641 BFLAGS=-j8
For the tests none of the five seds for removing tests were used:
=== gcc Summary ===
# of expected passes 215966
# of unexpected failures 73
=== g++ Summary ===
# of expected passes 248266
# of unexpected failures 1
=== gotools Summary ===
# of expected passes 415
# of unexpected failures 2
=== libgo Summary ===
# of expected passes 195
# of unexpected failures 1
=== libgomp Summary ===
# of expected passes 16957
# of unexpected failures 6
The gcc failures are mostly in gcc.dg/guality/ but there are a significant number of XPASS entries there also. There is one failure in gcc.dg/sarif-output/bad-pragma.c and there are four failures in gcc.target/i386/pr90579.c.
The tests took 58m18.977s at -j8 (40.2 SBU). Disk usage increased by 1373 MB (1.4 GB) for tests.
Attachments (1)
Change History (9)
comment:2 by , 9 months ago
Replying to thomas:
We might add a note to the users telling that gcc does not compile when 'cobol' is in the list of enabled languages and architecture isn't x86_64.
Reason: They use size_t as type for a bitmask field but size_t is only 4 byte in i686 but they need at least 5 bytes. That is in libgcobol/common-defs.h where cbl_field_attr_t gets defined.
(I've tried to replace that size_t with uint64_t (needs seds in 3 files) but finally it results in a linkage error - so i'm not yet done, dunno if i ever will be)
This sounds like a good plan to me
comment:3 by , 9 months ago
With the patch it seems to compile. I do not say: '... it seems to work'.
There are a lot of warnings in genapi.cc or so about format placeholders like %ld while the argument is another type of int. That has its reason in the authors being big fans of type 'size_t', they uses it all over, but unfortunately, size_t has different size on different archs. That is for example something like
16752 | "_%s_data_%lu",
| ~~^
| |
| long unsigned int
| %u
16753 | new_var->name,
16754 | sv_data_name_counter++);
| ~~~~~~~~~~~~~~~~~~~~~~
| |
| size_t {aka unsigned int}
comment:4 by , 9 months ago
Currently Cobol is only supposed to work on x86_64 and arm64. Please just disable it for i686.
comment:5 by , 9 months ago
Right, even though the patch makes it compilable, it does not run:
<built-in>: sorry, unimplemented: COBOL requires a 64-bit configuration
It might be a bit overambitionated for now to try making it available on i686 ... Too bad.
comment:6 by , 9 months ago
| Owner: | changed from to |
|---|---|
| Status: | new → assigned |
comment:7 by , 9 months ago
| Summary: | gcc-15.1 → gcc-15.1 (Wait for LFS) |
|---|
comment:8 by , 8 months ago
| Resolution: | → fixed |
|---|---|
| Status: | assigned → closed |
Fixed at commit 27c4cd7b50.

We might add a note to the users telling that gcc does not compile when 'cobol' is in the list of enabled languages and architecture isn't x86_64.
Reason: They use size_t as type for a bitmask field but size_t is only 4 byte in i686 but they need at least 5 bytes. That is in libgcobol/common-defs.h where cbl_field_attr_t gets defined.
(I've tried to replace that size_t with uint64_t (needs seds in 3 files) but finally it results in a linkage error - so i'm not yet done, dunno if i ever will be)