linux test results for the 2.33 branch

Alan Modra amodra@gmail.com
Sat Sep 21 02:04:00 GMT 2019
On Fri, Sep 20, 2019 at 08:39:44AM -0700, H.J. Lu wrote:
> On Fri, Sep 20, 2019 at 1:27 AM Alan Modra <amodra@gmail.com> wrote:
> >
> > On Thu, Sep 19, 2019 at 02:39:31PM +0200, Matthias Klose wrote:
> > > On Ubuntu powerpc64le-linux-gnu I see one failure:
> > >
> > > Running /<<PKGBUILDDIR>>/ld/testsuite/ld-plugin/lto.exp ...
> > > FAIL: Run pr24406-1
> >
> > I've seen that one.  It's a compiler array-bounds warning.  HJ could
> > you take a look at your testcase?

I was wrong about it being a compiler array-bounds warning.  Instead
it's a glibc header check:

In function 'read',
    inlined from 'main' at .../ld/testsuite/ld-plugin/pr24406-1.c:15:11:
/usr/include/powerpc64le-linux-gnu/bits/unistd.h:42:9: warning: call to '__read_chk_warn' declared with attribute warning: read called with bigger length than size of the destination buffer
  return __read_chk_warn (__fd, __buf, __nbytes, __bos0 (__buf));
         ^
FAIL: Run pr24406-1

Seen on Ubuntu 18.04 ppc64le glibc-2.27, gcc-7.4.0.

> I didn't see the failure with GCC 9 on Fedora 30.  Can you try this
> 
> diff --git a/ld/testsuite/ld-plugin/pr24406-1.c
> b/ld/testsuite/ld-plugin/pr24406-1.c
> index 43995bdb07..fc706d3f71 100644
> --- a/ld/testsuite/ld-plugin/pr24406-1.c
> +++ b/ld/testsuite/ld-plugin/pr24406-1.c
> @@ -12,6 +12,6 @@ __wrap_read (int fd, void *buffer, size_t count)
>  int
>  main ()
>  {
> -  int i = read (1, "abc", 5);
> +  int i = read (1, "abc", 4);
>    return i == 0;
>  }
> 

Yes, that cures the failure.

In other news, I'm about to install this fix for a gcc10 warning.

.../gas/config/tc-i386.c: In function ‘md_parse_option’:
.../gas/config/tc-i386.c:11441:9: error: implicit conversion from ‘enum <anonymous>’ to ‘enum <anonymous>’ [-Werror=enum-conversion]
11441 |  vexwig = evexw0;
      |         ^
.../gas/config/tc-i386.c:11443:9: error: implicit conversion from ‘enum <anonymous>’ to ‘enum <anonymous>’ [-Werror=enum-conversion]
11443 |  vexwig = evexw1;
      |         ^

	* config/tc-i386.c (md_parse_option): Fix warning on vexwig assignment.

diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 349b36da5d..5d783b4276 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -11438,9 +11438,9 @@ md_parse_option (int c, const char *arg)
 
     case OPTION_MVEXWIG:
       if (strcmp (arg, "0") == 0)
-	vexwig = evexw0;
+	vexwig = vexw0;
       else if (strcmp (arg, "1") == 0)
-	vexwig = evexw1;
+	vexwig = vexw1;
       else
 	as_fatal (_("invalid -mvexwig= option: `%s'"), arg);
       break;

-- 
Alan Modra
Australia Development Lab, IBM



More information about the Binutils mailing list