From d1cbc6f371e2720fe4bf4975d8ad9c81a9f01351 Mon Sep 17 00:00:00 2001 From: Dominik Vogt Date: Fri, 30 Oct 2015 15:18:06 +0100 Subject: [PATCH 2/2] gdb/testsuite: Fix left shift of negative value. This patch fixes all occurences of left-shifting negative constants in C cod which is undefined by the C standard. gdb/testsuite/ChangeLog: * lib/dwarf.exp (_note): Fix left shift of negative value. * gdb.trace/trace-condition.exp: Likewise. --- gdb/testsuite/gdb.trace/trace-condition.exp | 2 +- gdb/testsuite/lib/dwarf.exp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/gdb/testsuite/gdb.trace/trace-condition.exp b/gdb/testsuite/gdb.trace/trace-condition.exp index aec0401..46fa5ed 100644 --- a/gdb/testsuite/gdb.trace/trace-condition.exp +++ b/gdb/testsuite/gdb.trace/trace-condition.exp @@ -152,7 +152,7 @@ foreach trace_command { "trace" "ftrace" } { test_tracepoints $trace_command "21 * 2 == 42" 10 test_tracepoints $trace_command "21 << 1 == 42" 10 test_tracepoints $trace_command "42 >> 1 == 21" 10 - test_tracepoints $trace_command "-21 << 1 == -42" 10 + test_tracepoints $trace_command "-(21 << 1) == -42" 10 test_tracepoints $trace_command "-42 >> 1 == -21" 10 test_tracepoints $trace_command "(0xabababab & 0x0000ffff) == 0xabab" 10 test_tracepoints $trace_command "(0xabababab | 0x0000ffff) == 0xababffff" 10 diff --git a/gdb/testsuite/lib/dwarf.exp b/gdb/testsuite/lib/dwarf.exp index 9716795..c87da87 100644 --- a/gdb/testsuite/lib/dwarf.exp +++ b/gdb/testsuite/lib/dwarf.exp @@ -1289,7 +1289,7 @@ namespace eval Dwarf { _op .ascii [_quote $name] # Alignment. set align 2 - set total [expr {($namelen + (1 << $align) - 1) & (-1 << $align)}] + set total [expr {($namelen + (1 << $align) - 1) & -(1 << $align)}] for {set i $namelen} {$i < $total} {incr i} { _op .byte 0 } -- 2.3.0