Fix gdb.base/savedregs.exp with clang

gdb.base/savedregs.exp fails to run with clang, because of:

 gdb compile failed, /gdbtest/src/gdb/testsuite/gdb.base/savedregs.c:36:37:
       warning: operator '<<' has lower precedence than '+'; '+' will be
       evaluated first [-Wshift-op-parentheses]
   return callee (a1 << a2 * a3 / a4 + a6 & a6 % a7 - a8) + done;
                     ~~ ~~~~~~~~~~~~~^~~~
 /gdbtest/build/gdb/testsuite/gdb.base/savedregs.c:36:37: note: place
       parentheses around the '+' expression to silence this warning
   return callee (a1 << a2 * a3 / a4 + a6 & a6 % a7 - a8) + done;
                                     ^
                        (                )
 1 warning generated.

This commit fixes it by adding the suggested parentheses.

gdb/testsuite/ChangeLog:

	* gdb.base/savedregs.exp (caller): Use parentheses to
	make expected expression evaluation ordering explicit.
This commit is contained in:
Gary Benson
2020-07-13 16:01:00 +01:00
parent 915771bb8a
commit f413dd7439
2 changed files with 6 additions and 1 deletions

View File

@@ -1,3 +1,8 @@
2020-07-13 Gary Benson <gbenson@redhat.com>
* gdb.base/savedregs.exp (caller): Use parentheses to
make expected expression evaluation ordering explicit.
2020-07-13 Gary Benson <gbenson@redhat.com>
* gdb.arch/i386-sse.c (have_sse) <edx>: Make unsigned.

View File

@@ -33,7 +33,7 @@ callee (int param)
extern int
caller (int a1, int a2, int a3, int a4, int a5, int a6, int a7, int a8)
{
return callee (a1 << a2 * a3 / a4 + a6 & a6 % a7 - a8) + done;
return callee ((a1 << a2 * a3 / a4) + a6 & a6 % a7 - a8) + done;
}
static void