Hi,

Harmen Stoppels wrote:
> All tested version of Intel OneAPI's `icx` compiler segfault in the 
> `gl_cv_func_working_error` test added in "error: Work around an Android 
> problem." (2886cca8398f4c5a4d68368a19c0e6d0ff97c739).
> 
> For details see the issue upstream 
> https://community.intel.com/t5/Intel-oneAPI-DPC-C-Compiler/All-versions-of-icx-miscompile-error-0-resulting-in-segfaults/m-p/1744208
>  or this link to compiler explorer: https://godbolt.org/z/Exfsc8j8Y.
> 
> The issue is that `icx` treats `error (0, 0, "foo");` as noreturn, but 
> `error(0, ...)` should return, and lacks
> 
>         xor     eax, eax
>         add     rsp, 8
>         ret

I agree that it looks like the compiler makes invalid assumptions about the
'error' function.

> A user reports that "[c]onfigure hangs forever, eating RAM until OOM kill."

That user should use 'ulimit' to constrain the impact of such runaway
processes.

To me, such a compiler bug in a configure test does not warrant a workaround
in Gnulib — especially since it's scheduled to be fixed in the next compiler
release.

Bruno




Reply via email to