Hi Eric,

> because the Ada runtime performs pattern matching on the probes.  I have 
> installed the following fix.
>
>
>       PR target/124336
>       * init.c (__gnat_adjust_context_for_raise) [x86/Linux]: Adjust
>       pattern matching to new stack probes.

this patch broke Linux/x86_64 bootstrap:

gcc/ada/init.c: In function ‘void __gnat_adjust_context_for_raise(int, void*)’:
gcc/ada/init.c:517:7: error: suggest parentheses around ‘&&’ within ‘||’ 
[-Werror=parentheses]
  515 |   if (signo == SIGSEGV && pc
      |       ~~~~~~~~~~~~~~~~~~~~~~
  516 |       /* The pattern is "orq $0x0,(%rsp)" for a probe in 64-bit mode.  
*/ 
      |       
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  517 |       && ((*pc & 0xffffffffffLL) == 0x00240c8348LL
      |       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  518 |           /* The pattern is "orl $0x0,(%rsp)" for a probe in x32 mode.  
*/
      |           
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  519 |           || (*pc & 0xffffffffLL) == 0x00240c83LL)
      |           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

        Rainer

-- 
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University

Reply via email to