On Thu, Oct 31, 2024 at 05:07:52PM +0000, Joseph Myers wrote:
> On Thu, 31 Oct 2024, Jakub Jelinek wrote:
> 
> > On Wed, Oct 23, 2024 at 05:52:13PM +0000, Joseph Myers wrote:
> > > One test failing with a -std=gnu23 default that I wanted to
> > > investigate further is gcc.dg/pr114115.c.  Building with -std=gnu23
> > > produces a warning:
> > > 
> > > pr114115.c:18:8: warning: 'ifunc' resolver for 'foo_ifunc2' should return 
> > > 'void * (*)(void)' [-Wattribute-alias=]
> > > 
> > > It turns out that this warning (from cgraphunit.cc) is disabled for
> > > unprototyped functions.  It's not immediately obvious that being
> > > unprototyped has much to do with such incompatibilities of return type
> > > (void versus void *), but it still seems reasonable to address this
> > > warning by adding -std=gnu17 to the options for this testcase, so
> > > minimizing the perturbation to what it tests.
> > 
> > My preference would be just fix the bug in the testcase, i.e.
> > -void *foo_ifunc2() __attribute__((ifunc("foo_resolver")));
> > +void foo_ifunc2() __attribute__((ifunc("foo_resolver")));
> 
> Here is a patch version to do that.  OK to commit?
> 
> 
> testsuite: Fix prototype in gcc.dg/pr114115.c
> 
> One test failing with a -std=gnu23 default that I wanted to
> investigate further is gcc.dg/pr114115.c.  Building with -std=gnu23
> produces a warning:
> 
> pr114115.c:18:8: warning: 'ifunc' resolver for 'foo_ifunc2' should return 
> 'void * (*)(void)' [-Wattribute-alias=]
> 
> It turns out that this warning (from cgraphunit.cc) is disabled for
> unprototyped functions.  Fix the return type for foo_ifunc2 so the
> test builds without warnings both with and without -std=gnu23.
> 
> Tested for x86_64.
> 
>       * gcc.dg/pr114115.c (foo_ifunc2): Return void.

Ok, thanks.

        Jakub

Reply via email to