On 7/21/23 07:54, Thomas Huth wrote:
On 20/07/2023 22.47, Olaf Hering wrote:
This is going on since a few weeks. I guess there is no check in CI to see if qemu.git#master compiles in Tumbleweed.

We only have a check for openSUSE leap ...
Which compiler version is causing trouble for you?

Since the switch to meson submodules, berkeley-testfloat-3 became mandatory. I think in the past I was able to ignore this submodule and not export it, so the following error did not show up:

[  141s] ../subprojects/berkeley-testfloat-3/source/genCases_f64.c: In function 'f64Random': [  141s] ../subprojects/berkeley-testfloat-3/source/genCases_f64.c:559:1: error: control reaches end of non-void function [-Werror=return-type]
[  141s]   559 | }
[  141s]       | ^
[  141s] cc1: some warnings being treated as errors

Apparently this is a known issue, 3ac1f81329f attempted to ignore such errors.

Seems like the flag got lost in commit d2dfe0b506e47e14 ... Paolo, any ideas?

Do I need to tweak the global, system-provided CFLAGS myself, or can the source be fixed to address this? Disabling this error globally will hide errors elsewhere.

We are using a forked version of the berkeley-testfloat repository, and it's possible to add patches there:

  https://gitlab.com/qemu-project/berkeley-testfloat-3

The f64Random function that you mentioned above could easily be fixed by adding a "default:" case to the switch statement, I think. Are there any other additional warnings/errors after fixing this?

Feel free to send a patch and CC: the people from https://gitlab.com/qemu-project/berkeley-testfloat-3/-/project_members

If this is with optimization enabled, the bug should be reported to gcc 
bugzilla.
The compiler should easily prove the default case is unreachable.


r~

Reply via email to