After this patch, I am seeing this -Warray-parameter error:

In file included from ../include/pthread.h:1,
                 from ../sysdeps/nptl/thread_db.h:25,
                 from ../nptl/descr.h:32,
                 from ../sysdeps/aarch64/nptl/tls.h:44,
                 from ../include/errno.h:25,
                 from ../sysdeps/unix/sysv/linux/sysdep.h:23,
                 from ../sysdeps/unix/sysv/linux/generic/sysdep.h:22,
                 from ../sysdeps/unix/sysv/linux/aarch64/sysdep.h:24,
                 from <stdin>:1:
../sysdeps/nptl/pthread.h:734:47: error: argument 1 of type ‘struct 
__jmp_buf_tag *’ declared as a pointer [-Werror=array-parameter=]
  734 | extern int __sigsetjmp (struct __jmp_buf_tag *__env, int __savemask) 
__THROWNL;
      |                         ~~~~~~~~~~~~~~~~~~~~~~^~~~~
In file included from ../include/setjmp.h:2,
                 from ../nptl/descr.h:24,
                 from ../sysdeps/aarch64/nptl/tls.h:44,
                 from ../include/errno.h:25,
                 from ../sysdeps/unix/sysv/linux/sysdep.h:23,
                 from ../sysdeps/unix/sysv/linux/generic/sysdep.h:22,
                 from ../sysdeps/unix/sysv/linux/aarch64/sysdep.h:24,
                 from <stdin>:1:
../setjmp/setjmp.h:54:46: note: previously declared as an array ‘struct 
__jmp_buf_tag[1]’
   54 | extern int __sigsetjmp (struct __jmp_buf_tag __env[1], int __savemask) 
__THROWNL;
      |                         ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~
cc1: all warnings being treated as errors


The build/host/target setup is:
Build: x86_64-linux-gnu (Ubuntu 18.04)
Host: x86_64-linux-gnu
Target: aarch64-none-linux-gnu, aarch64_be-none-linux-gnu, 
arm-none-linux-gnueabi, arm-none-linux-gnueabihf



Kind regards
Vasee



On 20/09/2020, 01:02, "Gcc-patches on behalf of Martin Sebor via Gcc-patches" 
<gcc-patches-boun...@gcc.gnu.org on behalf of gcc-patches@gcc.gnu.org> wrote:

    On 9/17/20 4:38 PM, Joseph Myers wrote:
    > On Wed, 16 Sep 2020, Martin Sebor via Gcc-patches wrote:
    > 
    >> Attached is an updated revision of the patch.  Besides the tweaks
    >> above it also contains a cosmetic change to the warning issued
    >> for mismatches in unspecified VLA bounds: it points at the decl
    >> with more of them to guide the user to specify them rather than
    >> make them all unspecified.
    > 
    > The previous version of the patch had a while loop as previously discussed
    > to handle skipping multiple consecutive cdk_attrs.
    > 
    > +      next = pd->declarator;
    > +      while (next && next->kind == cdk_attrs)
    > +       next = next->declarator;
    > 
    > This version is back to an "if", but I don't see anything else in the new
    > version of that function that actually means the "if" would skip multiple
    > consecutive cdk_attrs as desired.
    > 
    > The patch is OK with the "while" restored there.  If for some reason the
    > "while" breaks something, we'll need to look in more detail at exactly
    > what case isn't being handled correctly by "while".

    I guess it was the result of an experiment, trying to see if I could
    break it with the 'if'.  I (hope I) put it back and pushed the whole
    series.  I had to squash patches 1 and 2 because of a dependency that
    I had missed.

    Thanks for the review, by the way.  I think the signature validation
    we've ended up with is quite a bit more comprehensive than the first
    attempt.

    Martin

Reply via email to