diff options
-rw-r--r-- | gcc/testsuite/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/testsuite/lib/asan-dg.exp | 5 |
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 9cb21c7..f2958a6 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2012-11-17 Jakub Jelinek <jakub@redhat.com> + + * lib/asan-dg.exp (asan_symbolize): Prune BFD: prefixed error messages + from addr2line_output. Increment idx if asking for more than one address + in one object. + 2012-11-16 Jakub Jelinek <jakub@redhat.com> PR tree-optimization/55329 diff --git a/gcc/testsuite/lib/asan-dg.exp b/gcc/testsuite/lib/asan-dg.exp index f873fca..b58a91f 100644 --- a/gcc/testsuite/lib/asan-dg.exp +++ b/gcc/testsuite/lib/asan-dg.exp @@ -127,7 +127,9 @@ proc asan_symbolize { output } { set args "-f -e $key $arr($key)" set status [remote_exec host "$addr2line_name" $args] if { [lindex $status 0] > 0 } continue - set addr2line_output [regexp -inline -all -line "^\[^\n\r]*" [lindex $status 1]] + regsub -all "\r\n" [lindex $status 1] "\n" addr2line_output + regsub -all "(^|\n|\r)BFD: \[^\n\r\]*" $addr2line_output "" addr2line_output + set addr2line_output [regexp -inline -all -line "^\[^\n\r]*" $addr2line_output] set idx 0 foreach val $arr($key) { if { [expr $idx + 1] < [llength $addr2line_output] } { @@ -137,6 +139,7 @@ proc asan_symbolize { output } { set newkey "$key+$val" set repl($newkey) "$fnname $fileline" } + set idx [expr $idx + 2] } } } |