2015-01-01 09:32:14 +00:00
# Copyright 1988-2015 Free Software Foundation, Inc.
1999-04-16 01:35:26 +00:00
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
2007-08-23 18:14:19 +00:00
# the Free Software Foundation; either version 3 of the License, or
1999-04-16 01:35:26 +00:00
# (at your option) any later version.
2007-08-23 18:14:19 +00:00
#
1999-04-16 01:35:26 +00:00
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
2007-08-23 18:14:19 +00:00
#
1999-04-16 01:35:26 +00:00
# You should have received a copy of the GNU General Public License
2007-08-23 18:14:19 +00:00
# along with this program. If not, see <http://www.gnu.org/licenses/>.
1999-04-16 01:35:26 +00:00
# This file was written by Rob Savoye. (rob@cygnus.com)
2008-04-07 16:32:44 +00:00
if { [prepare_for_testing break.exp "break" {break.c break1.c} {debug nowarnings}] } {
1999-06-28 16:06:02 +00:00
return -1
}
2008-04-07 16:32:44 +00:00
set srcfile break.c
set srcfile1 break1.c
1999-04-16 01:35:26 +00:00
#
# test simple breakpoint setting commands
#
# Test deleting all breakpoints when there are none installed,
# GDB should not prompt for confirmation.
2005-11-09 06:41:30 +00:00
# Note that lib/gdb.exp provides a "delete_breakpoints" proc
1999-04-16 01:35:26 +00:00
# for general use elsewhere.
send_gdb "delete breakpoints\n"
gdb_expect {
-re "Delete all breakpoints.*$" {
send_gdb "y\n"
gdb_expect {
-re "$gdb_prompt $" {
fail "Delete all breakpoints when none (unexpected prompt)"
}
timeout { fail "Delete all breakpoints when none (timeout after unexpected prompt)" }
}
}
-re ".*$gdb_prompt $" { pass "Delete all breakpoints when none" }
timeout { fail "Delete all breakpoints when none (timeout)" }
}
#
# test break at function
#
gdb_test "break main" \
"Breakpoint.*at.* file .*$srcfile, line.*" \
"breakpoint function"
2002-05-13 01:18:19 +00:00
#
# test break at quoted function
#
gdb_test "break \"marker2\"" \
2003-12-09 18:19:20 +00:00
"Breakpoint.*at.* file .*$srcfile1, line.*" \
2002-05-13 01:18:19 +00:00
"breakpoint quoted function"
1999-04-16 01:35:26 +00:00
#
# test break at function in file
#
gdb_test "break $srcfile:factorial" \
"Breakpoint.*at.* file .*$srcfile, line.*" \
"breakpoint function in file"
2003-11-13 15:34:39 +00:00
set bp_location1 [gdb_get_line_number "set breakpoint 1 here"]
1999-04-16 01:35:26 +00:00
#
# test break at line number
#
2000-02-16 00:11:07 +00:00
# Note that the default source file is the last one whose source text
# was printed. For native debugging, before we've executed the
# program, this is the file containing main, but for remote debugging,
# it's wherever the processor was stopped when we connected to the
# board. So, to be sure, we do a list command.
#
gdb_test "list main" \
2014-10-22 09:24:25 +00:00
".*main \\(int argc, char \\*\\*argv, char \\*\\*envp\\).*" \
2000-02-16 00:11:07 +00:00
"use `list' to establish default source file"
2003-11-13 15:34:39 +00:00
gdb_test "break $bp_location1" \
"Breakpoint.*at.* file .*$srcfile, line $bp_location1\\." \
1999-04-16 01:35:26 +00:00
"breakpoint line number"
#
# test duplicate breakpoint
#
2003-11-13 15:34:39 +00:00
gdb_test "break $bp_location1" \
"Note: breakpoint \[0-9\]+ also set at pc.*Breakpoint \[0-9\]+ at.* file .*$srcfile, line $bp_location1\\." \
1999-04-16 01:35:26 +00:00
"breakpoint duplicate"
2003-11-13 15:34:39 +00:00
set bp_location2 [gdb_get_line_number "set breakpoint 2 here"]
1999-04-16 01:35:26 +00:00
#
# test break at line number in file
#
2003-11-13 15:34:39 +00:00
gdb_test "break $srcfile:$bp_location2" \
"Breakpoint.*at.* file .*$srcfile, line $bp_location2\\." \
1999-04-16 01:35:26 +00:00
"breakpoint line number in file"
2003-11-13 15:34:39 +00:00
set bp_location3 [gdb_get_line_number "set breakpoint 3 here"]
set bp_location4 [gdb_get_line_number "set breakpoint 4 here"]
1999-04-16 01:35:26 +00:00
2002-01-07 19:21:27 +00:00
#
# Test putting a break at the start of a multi-line if conditional.
# Verify the breakpoint was put at the start of the conditional.
#
gdb_test "break multi_line_if_conditional" \
2003-11-13 15:34:39 +00:00
"Breakpoint.*at.* file .*$srcfile, line $bp_location3\\." \
2002-01-07 19:21:27 +00:00
"breakpoint at start of multi line if conditional"
gdb_test "break multi_line_while_conditional" \
2003-11-13 15:34:39 +00:00
"Breakpoint.*at.* file .*$srcfile, line $bp_location4\\." \
2002-01-07 19:21:27 +00:00
"breakpoint at start of multi line while conditional"
2003-11-13 15:34:39 +00:00
set bp_location6 [gdb_get_line_number "set breakpoint 6 here"]
2011-12-13 17:22:11 +00:00
set main_line $bp_location6
1999-04-16 01:35:26 +00:00
1999-06-28 16:06:02 +00:00
if {$hp_aCC_compiler} {
set proto "\\(int\\)"
} else {
set proto ""
}
2003-01-15 14:25:11 +00:00
2003-11-13 15:34:39 +00:00
set bp_location7 [gdb_get_line_number "set breakpoint 7 here"]
2003-12-09 18:19:20 +00:00
set bp_location8 [gdb_get_line_number "set breakpoint 8 here" $srcfile1]
2003-11-13 15:34:39 +00:00
1999-04-16 01:35:26 +00:00
gdb_test "info break" \
2008-02-26 08:14:11 +00:00
"Num Type\[ \]+Disp Enb Address\[ \]+What.*
1999-04-16 01:35:26 +00:00
\[0-9\]+\[\t \]+breakpoint keep y.* in main at .*$srcfile:$main_line.*
2014-10-22 09:24:25 +00:00
\[0-9\]+\[\t \]+breakpoint keep y.* in marker2 at .*$srcfile1:$bp_location8.*
2003-11-13 15:34:39 +00:00
\[0-9\]+\[\t \]+breakpoint keep y.* in factorial$proto at .*$srcfile:$bp_location7.*
\[0-9\]+\[\t \]+breakpoint keep y.* in main at .*$srcfile:$bp_location1.*
\[0-9\]+\[\t \]+breakpoint keep y.* in main at .*$srcfile:$bp_location1.*
\[0-9\]+\[\t \]+breakpoint keep y.* in main at .*$srcfile:$bp_location2.*
\[0-9\]+\[\t \]+breakpoint keep y.* in multi_line_if_conditional at .*$srcfile:$bp_location3.*
\[0-9\]+\[\t \]+breakpoint keep y.* in multi_line_while_conditional at .*$srcfile:$bp_location4" \
1999-04-16 01:35:26 +00:00
"breakpoint info"
2011-02-23 19:20:39 +00:00
#
# Test info breakpoint with arguments
#
set see1 0
set see2 0
set see3 0
set see4 0
set see5 0
set see6 0
gdb_test_multiple "info break 2 4 6" "info break 2 4 6" {
-re "1\[\t \]+breakpoint *keep y\[^\r\n\]*:$main_line\[^\r\n\]*" {
set see1 1
exp_continue
}
-re "2\[\t \]+breakpoint *keep y\[^\r\n\]* in marker2 at \[^\r\n\]*" {
set see2 1
exp_continue
}
-re "3\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location7\[^\r\n\]*" {
set see3 1
exp_continue
}
-re "4\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location1\[^\r\n\]*" {
set see4 1
exp_continue
}
-re "5\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location1\[^\r\n\]*" {
set see5 1
exp_continue
}
-re "6\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location2\[^\r\n\]*" {
set see6 1
exp_continue
}
-re ".*$gdb_prompt $" {
if { !$see1 && $see2 && !$see3 && $see4 && !$see5 && $see6 } then {
pass "info break 2 4 6"
} else {
fail "info break 2 4 6"
}
}
}
set see1 0
set see2 0
set see3 0
set see4 0
set see5 0
set see6 0
gdb_test_multiple "info break 3-5" "info break 3-5" {
-re "1\[\t \]+breakpoint *keep y.* in main at .*:$main_line\[^\r\n\]*" {
set see1 1
exp_continue
}
-re "2\[\t \]+breakpoint *keep y\[^\r\n\]* in marker2 at \[^\r\n\]*" {
set see2 1
exp_continue
}
-re "3\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location7\[^\r\n\]*" {
set see3 1
exp_continue
}
-re "4\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location1\[^\r\n\]*" {
set see4 1
exp_continue
}
-re "5\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location1\[^\r\n\]*" {
set see5 1
exp_continue
}
-re "6\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location2\[^\r\n\]*" {
set see6 1
exp_continue
}
-re ".*$gdb_prompt $" {
if { !$see1 && !$see2 && $see3 && $see4 && $see5 && !$see6 } then {
pass "info break 3-5"
} else {
fail "info break 3-5"
}
}
}
2011-02-27 20:57:16 +00:00
#
# Test disable/enable with arguments
#
# Test with value history
gdb_test "print 1" "" ""
gdb_test "print 2" "" ""
gdb_test "print 3" "" ""
gdb_test "print 4" "" ""
gdb_test "print 5" "" ""
gdb_test "print 6" "" ""
# $2 is 2 and $$ is 5
gdb_test_no_output "disable \$2 \$\$" "disable using history values"
set see1 0
set see2 0
set see3 0
set see4 0
set see5 0
set see6 0
gdb_test_multiple "info break" "check disable with history values" {
-re "1\[\t \]+breakpoint *keep y.* in main at .*:$main_line\[^\r\n\]*" {
set see1 1
exp_continue
}
-re "2\[\t \]+breakpoint *keep n\[^\r\n\]* in marker2 at \[^\r\n\]*" {
set see2 1
exp_continue
}
-re "3\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location7\[^\r\n\]*" {
set see3 1
exp_continue
}
-re "4\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location1\[^\r\n\]*" {
set see4 1
exp_continue
}
-re "5\[\t \]+breakpoint *keep n\[^\r\n\]*$bp_location1\[^\r\n\]*" {
set see5 1
exp_continue
}
-re "6\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location2\[^\r\n\]*" {
set see6 1
exp_continue
}
-re ".*$gdb_prompt $" {
if { $see1 && $see2 && $see3 && $see4 && $see5 && $see6 } then {
pass "check disable with history values"
} else {
fail "check disable with history values"
}
}
}
gdb_test "enable" "" ""
gdb_test "set \$foo = 3" "" ""
gdb_test "set \$bar = 6" "" ""
gdb_test_no_output "disable \$foo \$bar" "disable with convenience values"
set see1 0
set see2 0
set see3 0
set see4 0
set see5 0
set see6 0
gdb_test_multiple "info break" "check disable with convenience values" {
-re "1\[\t \]+breakpoint *keep y.* in main at .*:$main_line\[^\r\n\]*" {
set see1 1
exp_continue
}
-re "2\[\t \]+breakpoint *keep y\[^\r\n\]* in marker2 at \[^\r\n\]*" {
set see2 1
exp_continue
}
-re "3\[\t \]+breakpoint *keep n\[^\r\n\]*$bp_location7\[^\r\n\]*" {
set see3 1
exp_continue
}
-re "4\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location1\[^\r\n\]*" {
set see4 1
exp_continue
}
-re "5\[\t \]+breakpoint *keep y\[^\r\n\]*$bp_location1\[^\r\n\]*" {
set see5 1
exp_continue
}
-re "6\[\t \]+breakpoint *keep n\[^\r\n\]*$bp_location2\[^\r\n\]*" {
set see6 1
exp_continue
}
-re ".*$gdb_prompt $" {
if { $see1 && $see2 && $see3 && $see4 && $see5 && $see6 } then {
pass "check disable with convenience values"
} else {
fail "check disable with convenience values"
}
}
}
# test with bad values
gdb_test "enable" "" ""
gdb_test "disable 10" "No breakpoint number 10." \
"disable non-existent breakpoint 10"
2013-12-06 18:19:01 +00:00
gdb_test_no_output "set \$baz = 1.234"
2011-02-27 20:57:16 +00:00
gdb_test "disable \$baz" \
"Convenience variable must have integer value.*" \
"disable with non-integer convenience var"
gdb_test "disable \$grbx" \
"Convenience variable must have integer value.*" \
"disable with non-existent convenience var"
gdb_test "disable \$10" \
"History has not yet reached .10." \
"disable with non-existent history value"
gdb_test "disable \$1foo" \
"Convenience variable must have integer value.*" \
"disable with badly formed history value"
1999-04-16 01:35:26 +00:00
# FIXME: The rest of this test doesn't work with anything that can't
# handle arguments.
# Huh? There doesn't *appear* to be anything that passes arguments
# below.
#
# run until the breakpoint at main is hit. For non-stubs-using targets.
#
2007-03-27 17:59:38 +00:00
gdb_run_cmd
2014-09-12 21:16:31 +00:00
gdb_test "" \
"Breakpoint \[0-9\]+,.*main .*argc.*argv.* at .*$srcfile:$bp_location6.*$bp_location6\[\t \]+if .argc.* \{.*" \
"run until function breakpoint"
1999-04-16 01:35:26 +00:00
2012-06-11 19:16:24 +00:00
# Test the 'list' commands sets current file for the 'break LINENO' command.
2014-10-22 09:24:25 +00:00
set bp_marker1 [gdb_get_line_number "set breakpoint 15 here" ${srcfile1}]
2012-06-11 19:16:24 +00:00
gdb_test "list marker1" ".*"
gdb_test "break $bp_marker1" "Breakpoint \[0-9\]+ at 0x\[0-9a-f\]+: file .*${srcfile1}, line ${bp_marker1}\\." \
"break lineno"
gdb_test_no_output {delete $bpnum}
1999-04-16 01:35:26 +00:00
#
# run until the breakpoint at a line number
#
2003-11-13 15:34:39 +00:00
gdb_test continue "Continuing\\..*Breakpoint \[0-9\]+, main \\(argc=.*, argv=.*, envp=.*\\) at .*$srcfile:$bp_location1.*$bp_location1\[\t \]+printf.*factorial.*" \
1999-04-16 01:35:26 +00:00
"run until breakpoint set at a line number"
#
# Run until the breakpoint set in a function in a file
#
for {set i 6} {$i >= 1} {incr i -1} {
2003-11-13 15:34:39 +00:00
gdb_test continue "Continuing\\..*Breakpoint \[0-9\]+, factorial \\(value=$i\\) at .*$srcfile:$bp_location7.*$bp_location7\[\t \]+.*if .value > 1. \{.*" \
1999-04-16 01:35:26 +00:00
"run until file:function($i) breakpoint"
}
2002-05-13 01:18:19 +00:00
#
# Run until the breakpoint set at a quoted function
#
2014-10-22 09:24:25 +00:00
gdb_test continue "Continuing\\..*Breakpoint \[0-9\]+, (0x\[0-9a-f\]+ in )?marker2 \\(a=43\\) at .*$srcfile1:$bp_location8.*" \
2002-05-13 01:18:19 +00:00
"run until quoted breakpoint"
1999-04-16 01:35:26 +00:00
#
# run until the file:function breakpoint at a line number in a file
#
2003-11-13 15:34:39 +00:00
gdb_test continue "Continuing\\..*Breakpoint \[0-9\]+, main \\(argc=.*, argv=.*, envp=.*\\) at .*$srcfile:$bp_location2.*$bp_location2\[\t \]+argc = \\(argc == 12345\\);.*" \
1999-04-16 01:35:26 +00:00
"run until file:linenum breakpoint"
1999-10-05 23:13:56 +00:00
# Test break at offset +1
2003-11-13 15:34:39 +00:00
set bp_location10 [gdb_get_line_number "set breakpoint 10 here"]
1999-10-05 23:13:56 +00:00
gdb_test "break +1" \
2003-11-13 15:34:39 +00:00
"Breakpoint.*at.* file .*$srcfile, line $bp_location10\\." \
1999-10-05 23:13:56 +00:00
"breakpoint offset +1"
# Check to see if breakpoint is hit when stepped onto
gdb_test "step" \
2003-11-13 15:34:39 +00:00
".*Breakpoint \[0-9\]+, main \\(argc=.*, argv=.*, envp=.*\\) at .*$srcfile:$bp_location10.*$bp_location10\[\t \]+return argc;.*breakpoint 10 here.*" \
1999-10-05 23:13:56 +00:00
"step onto breakpoint"
2006-06-13 08:46:17 +00:00
# Check to see if breakpoint can be set on ending brace of function
set bp_location10a [gdb_get_line_number "set breakpoint 10a here"]
gdb_test "break $bp_location10a" \
"Breakpoint.*at.* file .*$srcfile, line $bp_location10a\\." \
"setting breakpoint at }"
gdb_test "continue" \
".*Breakpoint \[0-9\]+, main \\(argc=.*, argv=.*, envp=.*\\) at .*$srcfile:$bp_location10a.*$bp_location10a\[\t \]+}.*breakpoint 10a here.*" \
"continue to breakpoint at }"
1999-04-16 01:35:26 +00:00
#
# delete all breakpoints so we can start over, course this can be a test too
#
delete_breakpoints
#
# test temporary breakpoint at function
#
2008-04-15 14:33:55 +00:00
gdb_test "tbreak main" "Temporary breakpoint.*at.* file .*$srcfile, line.*" "Temporary breakpoint function"
1999-04-16 01:35:26 +00:00
#
# test break at function in file
#
2008-04-15 14:33:55 +00:00
gdb_test "tbreak $srcfile:factorial" "Temporary breakpoint.*at.* file .*$srcfile, line.*" \
1999-04-16 01:35:26 +00:00
"Temporary breakpoint function in file"
#
# test break at line number
#
2010-05-27 23:39:56 +00:00
gdb_test "tbreak $bp_location1" \
"Temporary breakpoint.*at.* file .*$srcfile, line $bp_location1.*" \
"Temporary breakpoint line number #1"
1999-04-16 01:35:26 +00:00
2008-04-15 14:33:55 +00:00
gdb_test "tbreak $bp_location6" "Temporary breakpoint.*at.* file .*$srcfile, line $bp_location6.*" "Temporary breakpoint line number #2"
1999-04-16 01:35:26 +00:00
#
# test break at line number in file
#
2010-05-27 23:39:56 +00:00
gdb_test "tbreak $srcfile:$bp_location2" \
"Temporary breakpoint.*at.* file .*$srcfile, line $bp_location2.*" \
"Temporary breakpoint line number in file #1"
1999-04-16 01:35:26 +00:00
2003-11-13 15:34:39 +00:00
set bp_location11 [gdb_get_line_number "set breakpoint 11 here"]
2008-04-15 14:33:55 +00:00
gdb_test "tbreak $srcfile:$bp_location11" "Temporary breakpoint.*at.* file .*$srcfile, line $bp_location11.*" "Temporary breakpoint line number in file #2"
1999-04-16 01:35:26 +00:00
#
# check to see what breakpoints are set (temporary this time)
#
2008-02-26 08:14:11 +00:00
gdb_test "info break" "Num Type.*Disp Enb Address.*What.*\[\r\n\]
1999-06-28 16:06:02 +00:00
\[0-9\]+\[\t \]+breakpoint del.*y.*in main at .*$srcfile:$main_line.*\[\r\n\]
2003-11-13 15:34:39 +00:00
\[0-9\]+\[\t \]+breakpoint del.*y.*in factorial$proto at .*$srcfile:$bp_location7.*\[\r\n\]
\[0-9\]+\[\t \]+breakpoint del.*y.*in main at .*$srcfile:$bp_location1.*\[\r\n\]
\[0-9\]+\[\t \]+breakpoint del.*y.*in main at .*$srcfile:$bp_location6.*\[\r\n\]
\[0-9\]+\[\t \]+breakpoint del.*y.*in main at .*$srcfile:$bp_location2.*\[\r\n\]
\[0-9\]+\[\t \]+breakpoint del.*y.*in main at .*$srcfile:$bp_location11.*" \
1999-06-28 16:06:02 +00:00
"Temporary breakpoint info"
1999-04-16 01:35:26 +00:00
#***********
# Verify that catchpoints for fork, vfork and exec don't trigger
# inappropriately. (There are no calls to those system functions
# in this test program.)
#
if ![runto_main] then { fail "break tests suppressed" }
2010-05-27 23:39:56 +00:00
gdb_test "catch" \
"Catch requires an event name." \
"catch requires an event name"
1999-04-16 01:35:26 +00:00
set name "set catch fork, never expected to trigger"
2010-05-27 23:39:56 +00:00
gdb_test_multiple "catch fork" "$name" {
-re "Catchpoint \[0-9\]* .fork..*$gdb_prompt $" {
pass $name
}
-re "Catch of fork not yet implemented.*$gdb_prompt $" {
pass $name
}
1999-04-16 01:35:26 +00:00
}
# If we are on HP-UX 10.20, we expect an error message to be
# printed if we type "catch vfork" at the gdb gdb_prompt. This is
# because on HP-UX 10.20, we cannot catch vfork events.
2010-05-27 23:39:56 +00:00
set name "set catch vfork, never expected to trigger"
1999-04-16 01:35:26 +00:00
if [istarget "hppa*-hp-hpux10.20"] then {
2010-05-27 23:39:56 +00:00
gdb_test "catch vfork" \
"Catch of vfork events not supported on HP-UX 10.20..*" \
"$name"
1999-04-16 01:35:26 +00:00
} else {
2010-05-27 23:39:56 +00:00
gdb_test_multiple "catch vfork" "$name" {
-re "Catchpoint \[0-9\]* .vfork..*$gdb_prompt $" {
pass $name
}
-re "Catch of vfork not yet implemented.*$gdb_prompt $" {
pass $name
}
1999-04-16 01:35:26 +00:00
}
}
set name "set catch exec, never expected to trigger"
2010-05-27 23:39:56 +00:00
gdb_test_multiple "catch exec" "$name" {
-re "Catchpoint \[0-9\]* .exec..*$gdb_prompt $" {
pass $name
}
-re "Catch of exec not yet implemented.*$gdb_prompt $" {
pass $name
}
1999-04-16 01:35:26 +00:00
}
# Verify that GDB responds gracefully when asked to set a breakpoint
# on a nonexistent source line.
#
the "ambiguous linespec" series
gdb
2011-12-06 Joel Brobecker <brobecker@acacore.com>
* language.h (struct language_defn): Add new component
la_symbol_name_compare.
* symfile.h (struct quick_symbol_functions): Update the profile
of parameter "name_matcher" for the expand_symtabs_matching
method. Update the documentation accordingly.
* ada-lang.h (ada_name_for_lookup): Add declaration.
* ada-lang.c (ada_name_for_lookup): New function, extracted out
from ada_iterate_over_symbols.
(ada_iterate_over_symbols): Do not encode symbol name anymore.
(ada_expand_partial_symbol_name): Adjust profile.
(ada_language_defn): Add value for la_symbol_name_compare field.
* linespec.c: #include "ada-lang.h".
(iterate_name_matcher): Add language parameter. Replace call
to strcmp_iw by call to language->la_symbol_name_compare.
(decode_variable): Encode COPY if current language is Ada.
* dwarf2read.c (dw2_expand_symtabs_matching): Adjust profile
of name_matcher parameter. Adjust call to name_matcher.
* psymtab.c (expand_symtabs_matching_via_partial): Likewise.
(expand_partial_symbol_names): Update profile of parameter "fun".
* psymtab.h (expand_partial_symbol_names): Update profile of
parameter "fun".
* symtab.c (demangle_for_lookup): Update function documentation.
(search_symbols_name_matches): Add language parameter.
(expand_partial_symbol_name): Likewise.
* c-lang.c (c_language_defn, cplus_language_defn)
(asm_language_defn, minimal_language_defn): Add value for
la_symbol_name_compare field.
* d-lang.c (d_language_defn): Likewise.
* f-lang.c (f_language_defn): Ditto.
* jv-lang.c (java_language_defn): Ditto.
* m2-lang.c (m2_language_defn): Ditto.
* objc-lang.c (objc_language_defn): Ditto.
* opencl-lang.c (opencl_language_defn): Ditto.
* p-lang.c (pascal_language_defn): Ditto.
* language.c (unknown_language_defn, auto_language_defn)
(local_language_defn): Ditto.
2011-12-06 Tom Tromey <tromey@redhat.com>
* linespec.c (iterate_over_all_matching_symtabs): Use
LA_ITERATE_OVER_SYMBOLS.
(lookup_prefix_sym, add_matching_symbols_to_info): Likewise.
(find_function_symbols, decode_variable): Remove Ada special
case.
* language.h (struct language_defn) <la_iterate_over_symbols>: New
field.
(LA_ITERATE_OVER_SYMBOLS): New macro.
* language.c (unknown_language_defn, auto_language_defn)
(local_language_defn): Update.
* c-lang.c (c_language_defn, cplus_language_defn)
(asm_language_defn, minimal_language_defn): Update.
* d-lang.c (d_language_defn): Update.
* f-lang.c (f_language_defn): Update.
* jv-lang.c (java_language_defn): Update.
* m2-lang.c (m2_language_defn): Update.
* objc-lang.c (objc_language_defn): Update.
* opencl-lang.c (opencl_language_defn): Update.
* p-lang.c (pascal_language_defn): Update.
* ada-lang.c (ada_iterate_over_symbols): New function.
(ada_language_defn): Update.
2011-12-06 Tom Tromey <tromey@redhat.com>
Joel Brobecker <brobecker@acacore.com>
PR breakpoints/13105, PR objc/8341, PR objc/8343, PR objc/8366,
PR objc/8535, PR breakpoints/11657, PR breakpoints/11970,
PR breakpoints/12023, PR breakpoints/12334, PR breakpoints/12856,
PR shlibs/8929, PR shlibs/7393:
* python/py-type.c (compare_maybe_null_strings): Rename from
compare_strings.
(check_types_equal): Update.
* utils.c (compare_strings): New function.
* tui/tui-winsource.c (tui_update_breakpoint_info): Update for
location changes.
* tracepoint.c (scope_info): Update.
(trace_find_line_command): Use DECODE_LINE_FUNFIRSTLINE.
* symtab.h (iterate_over_minimal_symbols)
(iterate_over_some_symtabs, iterate_over_symtabs)
(find_pcs_for_symtab_line, iterate_over_symbols)
(demangle_for_lookup): Declare.
(expand_line_sal): Remove.
* symtab.c (iterate_over_some_symtabs, iterate_over_symtabs)
(lookup_symtab_callback): New functions.
(lookup_symtab): Rewrite.
(demangle_for_lookup): New function, extract from
lookup_symbol_in_language.
(lookup_symbol_in_language): Use it.
(iterate_over_symbols): New function.
(find_line_symtab): Update.
(find_pcs_for_symtab_line): New functions.
(find_line_common): Add 'start' argument.
(decode_line_spec): Update. Change argument to 'flags', change
interpretation.
(append_expanded_sal): Remove.
(append_exact_match_to_sals): Remove.
(expand_line_sal): Remove.
* symfile.h (struct quick_symbol_functions) <lookup_symtab>:
Remove.
<map_symtabs_matching_filename>: New field.
* stack.c (func_command): Only look in the current program space.
Use DECODE_LINE_FUNFIRSTLINE.
* source.c (line_info): Set pspace on sal. Check program space in
the loop. Use DECODE_LINE_LIST_MODE.
(select_source_symtab): Use DECODE_LINE_FUNFIRSTLINE.
* solib-target.c: Remove DEF_VEC_I(CORE_ADDR).
* python/python.c (gdbpy_decode_line): Update.
* psymtab.c (partial_map_expand_apply): New function.
(partial_map_symtabs_matching_filename): Rename from
lookup_partial_symbol. Update arguments.
(lookup_symtab_via_partial_symtab): Remove.
(psym_functions): Update.
* objc-lang.h (parse_selector, parse_method): Don't declare.
(find_imps): Update.
* objc-lang.c (parse_selector, parse_method): Now static.
(find_methods): Change arguments. Fill in a vector of symbol
names.
(uniquify_strings): New function.
(find_imps): Change arguments.
* minsyms.c (iterate_over_minimal_symbols): New function.
* linespec.h (enum decode_line_flags): New.
(struct linespec_sals): New.
(struct linespec_result) <canonical>: Remove.
<pre_expanded, addr_string, sals>: New fields.
(destroy_linespec_result, make_cleanup_destroy_linespec_result)
(decode_line_full): Declare.
(decode_line_1): Update.
* linespec.c (struct address_entry, struct linespec_state, struct
collect_info): New types.
(add_sal_to_sals_basic, add_sal_to_sals, hash_address_entry)
(eq_address_entry, maybe_add_address): New functions.
(total_number_of_methods): Remove.
(iterate_name_matcher, iterate_over_all_matching_symtabs): New
functions.
(find_methods): Change arguments. Don't canonicalize input.
Simplify logic.
(add_matching_methods, add_constructors)
(build_canonical_line_spec): Remove.
(filter_results, convert_results_to_lsals): New functions.
(decode_line_2): Change arguments. Rewrite for new data
structures.
(decode_line_internal): Rename from decode_line_1. Change
arguments. Add cleanups. Update for new data structures.
(linespec_state_constructor, linespec_state_destructor)
(decode_line_full, decode_line_1): New functions.
(decode_indirect): Change arguments. Update.
(locate_first_half): Use skip_spaces.
(decode_objc): Change arguments. Update for new data structures.
Simplify logic.
(decode_compound): Change arguments. Add cleanups. Remove
fallback code, replace with error.
(struct decode_compound_collector): New type.
(collect_one_symbol): New function.
(lookup_prefix_sym): Change arguments. Update.
(compare_symbol_name, add_all_symbol_names_from_pspace)
(find_superclass_methods ): New functions.
(find_method): Rewrite.
(struct symtab_collector): New type.
(add_symtabs_to_list, collect_symtabs_from_filename): New
functions.
(symtabs_from_filename): Change API. Rename from
symtab_from_filename.
(collect_function_symbols): New function.
(find_function_symbols): Change API. Rename from
find_function_symbol. Rewrite.
(decode_all_digits): Change arguments. Rewrite.
(decode_dollar): Change arguments. Use decode_variable.
(decode_label): Change arguments. Rewrite.
(collect_symbols): New function.
(minsym_found): Change arguments. Rewrite.
(check_minsym, search_minsyms_for_name)
(add_matching_symbols_to_info): New function.
(decode_variable): Change arguments. Iterate over all symbols.
(symbol_found): Remove.
(symbol_to_sal): New function.
(init_linespec_result, destroy_linespec_result)
(cleanup_linespec_result, make_cleanup_destroy_linespec_result):
New functions.
(decode_digits_list_mode, decode_digits_ordinary): New functions.
* dwarf2read.c (dw2_map_expand_apply): New function.
(dw2_map_symtabs_matching_filename): Rename from
dw2_lookup_symtab. Change arguments.
(dwarf2_gdb_index_functions): Update.
* dwarf2loc.c: Remove DEF_VEC_I(CORE_ADDR).
* defs.h (compare_strings): Declare.
* cli/cli-cmds.c (compare_strings): Move to utils.c.
(edit_command, list_command): Use DECODE_LINE_LIST_MODE. Call
filter_sals.
(compare_symtabs, filter_sals): New functions.
* breakpoint.h (struct bp_location) <line_number, source_file>:
New fields.
(struct breakpoint) <line_number, source_file>: Remove.
<filter>: New field.
* breakpoint.c (print_breakpoint_location, init_raw_breakpoint)
(momentary_breakpoint_from_master, add_location_to_breakpoint):
Update for changes to locations.
(init_breakpoint_sal): Add 'filter' argument. Set 'filter' on
breakpoint.
(create_breakpoint_sal): Add 'filter' argument.
(remove_sal, expand_line_sal_maybe): Remove.
(create_breakpoints_sal): Remove 'sals' argument. Handle
pre-expanded sals and the filter.
(parse_breakpoint_sals): Use decode_line_full.
(check_fast_tracepoint_sals): Use get_sal_arch.
(create_breakpoint): Create a linespec_sals. Update.
(break_range_command): Use decode_line_full. Update.
(until_break_command): Update.
(clear_command): Update match conditions for linespec.c changes.
Use DECODE_LINE_LIST_MODE.
(say_where): Update for changes to locations.
(bp_location_dtor): Free 'source_file'.
(base_breakpoint_dtor): Free 'filter'. Don't free 'source_file'.
(update_static_tracepoint): Update for changes to locations.
(update_breakpoint_locations): Disable ranged breakpoint if too
many locations match. Update.
(addr_string_to_sals): Use decode_line_full. Resolve all sal
PCs.
(breakpoint_re_set_default): Don't call expand_line_sal_maybe.
(decode_line_spec_1): Update. Change argument name to 'flags',
change interpretation.
* block.h (block_containing_function): Declare.
* block.c (block_containing_function): New function.
* skip.c (skip_function_command): Update.
(skip_re_set): Update.
* infcmd.c (jump_command): Use DECODE_LINE_FUNFIRSTLINE.
* mi/mi-main.c (mi_cmd_trace_find): Use DECODE_LINE_FUNFIRSTLINE.
* NEWS: Add entry.
2011-12-06 Tom Tromey <tromey@redhat.com>
* elfread.c (elf_gnu_ifunc_resolver_return_stop): Allow
breakpoint's pspace to be NULL.
* breakpoint.h (struct breakpoint) <pspace>: Update comment.
* breakpoint.c (init_raw_breakpoint): Conditionally set
breakpoint's pspace.
(init_breakpoint_sal): Don't set breakpoint's pspace.
(prepare_re_set_context): Conditionally switch program space.
(addr_string_to_sals): Check executing_startup on location's
program space.
2011-12-06 Tom Tromey <tromey@redhat.com>
* breakpoint.h (enum enable_state) <bp_startup_disabled>: Remove.
* breakpoint.c (should_be_inserted): Explicitly check if program
space is executing startup.
(describe_other_breakpoints): Update.
(disable_breakpoints_before_startup): Change executing_startup
earlier. Remove loop.
(enable_breakpoints_after_startup): Likewise.
(init_breakpoint_sal): Don't use bp_startup_disabled.
(create_breakpoint): Don't use bp_startup_disabled.
(update_global_location_list): Use should_be_inserted.
(bkpt_re_set): Update.
gdb/testsuite
2011-12-06 Joel Brobecker <brobecker@acacore.com>
* gdb.ada/fullname_bp.exp: Add tests for other valid linespecs
involving a fully qualified function name.
2011-12-06 Tom Tromey <tromey@redhat.com>
* gdb.ada/homonym.exp: Add three breakpoint tests.
2011-12-06 Tom Tromey <tromey@redhat.com>
* gdb.base/solib-weak.exp (do_test): Remove kfail.
* gdb.trace/tracecmd.exp: Disable pending breakpoints earlier.
* gdb.objc/objcdecode.exp: Update for output changes.
* gdb.linespec/linespec.exp: New file.
* gdb.linespec/lspec.cc: New file.
* gdb.linespec/lspec.h: New file.
* gdb.linespec/body.h: New file.
* gdb.linespec/base/two/thefile.cc: New file.
* gdb.linespec/base/one/thefile.cc: New file.
* gdb.linespec/Makefile.in: New file.
* gdb.cp/templates.exp (test_template_breakpoints): Update for
output changes.
* gdb.cp/re-set-overloaded.exp: Remove kfail.
* gdb.cp/ovldbreak.exp: Update for output changes. "all" test now
makes one breakpoint.
* gdb.cp/method2.exp (test_break): Update for output changes.
* gdb.cp/mb-templates.exp: Update for output changes.
* gdb.cp/mb-inline.exp: Update for output changes.
* gdb.cp/mb-ctor.exp: Update for output changes.
* gdb.cp/ovsrch.exp: Use fully-qualified names.
* gdb.base/solib-symbol.exp: Run to main later. Breakpoint now
has multiple matches.
* gdb.base/sepdebug.exp: Disable pending breakpoints. Update for
error message change.
* gdb.base/list.exp (test_list_filename_and_number): Update for
error message change.
* gdb.base/break.exp: Disable pending breakpoints. Update for
output changes.
* configure.ac: Add gdb.linespec.
* configure: Rebuild.
* Makefile.in (ALL_SUBDIRS): Add gdb.linespec.
gdb/doc
2011-12-06 Tom Tromey <tromey@redhat.com>
* gdb.texinfo (Set Breaks): Update for new behavior.
2011-12-06 18:54:43 +00:00
gdb_test_no_output "set breakpoint pending off"
2010-05-27 23:39:56 +00:00
gdb_test "break 999" \
the "ambiguous linespec" series
gdb
2011-12-06 Joel Brobecker <brobecker@acacore.com>
* language.h (struct language_defn): Add new component
la_symbol_name_compare.
* symfile.h (struct quick_symbol_functions): Update the profile
of parameter "name_matcher" for the expand_symtabs_matching
method. Update the documentation accordingly.
* ada-lang.h (ada_name_for_lookup): Add declaration.
* ada-lang.c (ada_name_for_lookup): New function, extracted out
from ada_iterate_over_symbols.
(ada_iterate_over_symbols): Do not encode symbol name anymore.
(ada_expand_partial_symbol_name): Adjust profile.
(ada_language_defn): Add value for la_symbol_name_compare field.
* linespec.c: #include "ada-lang.h".
(iterate_name_matcher): Add language parameter. Replace call
to strcmp_iw by call to language->la_symbol_name_compare.
(decode_variable): Encode COPY if current language is Ada.
* dwarf2read.c (dw2_expand_symtabs_matching): Adjust profile
of name_matcher parameter. Adjust call to name_matcher.
* psymtab.c (expand_symtabs_matching_via_partial): Likewise.
(expand_partial_symbol_names): Update profile of parameter "fun".
* psymtab.h (expand_partial_symbol_names): Update profile of
parameter "fun".
* symtab.c (demangle_for_lookup): Update function documentation.
(search_symbols_name_matches): Add language parameter.
(expand_partial_symbol_name): Likewise.
* c-lang.c (c_language_defn, cplus_language_defn)
(asm_language_defn, minimal_language_defn): Add value for
la_symbol_name_compare field.
* d-lang.c (d_language_defn): Likewise.
* f-lang.c (f_language_defn): Ditto.
* jv-lang.c (java_language_defn): Ditto.
* m2-lang.c (m2_language_defn): Ditto.
* objc-lang.c (objc_language_defn): Ditto.
* opencl-lang.c (opencl_language_defn): Ditto.
* p-lang.c (pascal_language_defn): Ditto.
* language.c (unknown_language_defn, auto_language_defn)
(local_language_defn): Ditto.
2011-12-06 Tom Tromey <tromey@redhat.com>
* linespec.c (iterate_over_all_matching_symtabs): Use
LA_ITERATE_OVER_SYMBOLS.
(lookup_prefix_sym, add_matching_symbols_to_info): Likewise.
(find_function_symbols, decode_variable): Remove Ada special
case.
* language.h (struct language_defn) <la_iterate_over_symbols>: New
field.
(LA_ITERATE_OVER_SYMBOLS): New macro.
* language.c (unknown_language_defn, auto_language_defn)
(local_language_defn): Update.
* c-lang.c (c_language_defn, cplus_language_defn)
(asm_language_defn, minimal_language_defn): Update.
* d-lang.c (d_language_defn): Update.
* f-lang.c (f_language_defn): Update.
* jv-lang.c (java_language_defn): Update.
* m2-lang.c (m2_language_defn): Update.
* objc-lang.c (objc_language_defn): Update.
* opencl-lang.c (opencl_language_defn): Update.
* p-lang.c (pascal_language_defn): Update.
* ada-lang.c (ada_iterate_over_symbols): New function.
(ada_language_defn): Update.
2011-12-06 Tom Tromey <tromey@redhat.com>
Joel Brobecker <brobecker@acacore.com>
PR breakpoints/13105, PR objc/8341, PR objc/8343, PR objc/8366,
PR objc/8535, PR breakpoints/11657, PR breakpoints/11970,
PR breakpoints/12023, PR breakpoints/12334, PR breakpoints/12856,
PR shlibs/8929, PR shlibs/7393:
* python/py-type.c (compare_maybe_null_strings): Rename from
compare_strings.
(check_types_equal): Update.
* utils.c (compare_strings): New function.
* tui/tui-winsource.c (tui_update_breakpoint_info): Update for
location changes.
* tracepoint.c (scope_info): Update.
(trace_find_line_command): Use DECODE_LINE_FUNFIRSTLINE.
* symtab.h (iterate_over_minimal_symbols)
(iterate_over_some_symtabs, iterate_over_symtabs)
(find_pcs_for_symtab_line, iterate_over_symbols)
(demangle_for_lookup): Declare.
(expand_line_sal): Remove.
* symtab.c (iterate_over_some_symtabs, iterate_over_symtabs)
(lookup_symtab_callback): New functions.
(lookup_symtab): Rewrite.
(demangle_for_lookup): New function, extract from
lookup_symbol_in_language.
(lookup_symbol_in_language): Use it.
(iterate_over_symbols): New function.
(find_line_symtab): Update.
(find_pcs_for_symtab_line): New functions.
(find_line_common): Add 'start' argument.
(decode_line_spec): Update. Change argument to 'flags', change
interpretation.
(append_expanded_sal): Remove.
(append_exact_match_to_sals): Remove.
(expand_line_sal): Remove.
* symfile.h (struct quick_symbol_functions) <lookup_symtab>:
Remove.
<map_symtabs_matching_filename>: New field.
* stack.c (func_command): Only look in the current program space.
Use DECODE_LINE_FUNFIRSTLINE.
* source.c (line_info): Set pspace on sal. Check program space in
the loop. Use DECODE_LINE_LIST_MODE.
(select_source_symtab): Use DECODE_LINE_FUNFIRSTLINE.
* solib-target.c: Remove DEF_VEC_I(CORE_ADDR).
* python/python.c (gdbpy_decode_line): Update.
* psymtab.c (partial_map_expand_apply): New function.
(partial_map_symtabs_matching_filename): Rename from
lookup_partial_symbol. Update arguments.
(lookup_symtab_via_partial_symtab): Remove.
(psym_functions): Update.
* objc-lang.h (parse_selector, parse_method): Don't declare.
(find_imps): Update.
* objc-lang.c (parse_selector, parse_method): Now static.
(find_methods): Change arguments. Fill in a vector of symbol
names.
(uniquify_strings): New function.
(find_imps): Change arguments.
* minsyms.c (iterate_over_minimal_symbols): New function.
* linespec.h (enum decode_line_flags): New.
(struct linespec_sals): New.
(struct linespec_result) <canonical>: Remove.
<pre_expanded, addr_string, sals>: New fields.
(destroy_linespec_result, make_cleanup_destroy_linespec_result)
(decode_line_full): Declare.
(decode_line_1): Update.
* linespec.c (struct address_entry, struct linespec_state, struct
collect_info): New types.
(add_sal_to_sals_basic, add_sal_to_sals, hash_address_entry)
(eq_address_entry, maybe_add_address): New functions.
(total_number_of_methods): Remove.
(iterate_name_matcher, iterate_over_all_matching_symtabs): New
functions.
(find_methods): Change arguments. Don't canonicalize input.
Simplify logic.
(add_matching_methods, add_constructors)
(build_canonical_line_spec): Remove.
(filter_results, convert_results_to_lsals): New functions.
(decode_line_2): Change arguments. Rewrite for new data
structures.
(decode_line_internal): Rename from decode_line_1. Change
arguments. Add cleanups. Update for new data structures.
(linespec_state_constructor, linespec_state_destructor)
(decode_line_full, decode_line_1): New functions.
(decode_indirect): Change arguments. Update.
(locate_first_half): Use skip_spaces.
(decode_objc): Change arguments. Update for new data structures.
Simplify logic.
(decode_compound): Change arguments. Add cleanups. Remove
fallback code, replace with error.
(struct decode_compound_collector): New type.
(collect_one_symbol): New function.
(lookup_prefix_sym): Change arguments. Update.
(compare_symbol_name, add_all_symbol_names_from_pspace)
(find_superclass_methods ): New functions.
(find_method): Rewrite.
(struct symtab_collector): New type.
(add_symtabs_to_list, collect_symtabs_from_filename): New
functions.
(symtabs_from_filename): Change API. Rename from
symtab_from_filename.
(collect_function_symbols): New function.
(find_function_symbols): Change API. Rename from
find_function_symbol. Rewrite.
(decode_all_digits): Change arguments. Rewrite.
(decode_dollar): Change arguments. Use decode_variable.
(decode_label): Change arguments. Rewrite.
(collect_symbols): New function.
(minsym_found): Change arguments. Rewrite.
(check_minsym, search_minsyms_for_name)
(add_matching_symbols_to_info): New function.
(decode_variable): Change arguments. Iterate over all symbols.
(symbol_found): Remove.
(symbol_to_sal): New function.
(init_linespec_result, destroy_linespec_result)
(cleanup_linespec_result, make_cleanup_destroy_linespec_result):
New functions.
(decode_digits_list_mode, decode_digits_ordinary): New functions.
* dwarf2read.c (dw2_map_expand_apply): New function.
(dw2_map_symtabs_matching_filename): Rename from
dw2_lookup_symtab. Change arguments.
(dwarf2_gdb_index_functions): Update.
* dwarf2loc.c: Remove DEF_VEC_I(CORE_ADDR).
* defs.h (compare_strings): Declare.
* cli/cli-cmds.c (compare_strings): Move to utils.c.
(edit_command, list_command): Use DECODE_LINE_LIST_MODE. Call
filter_sals.
(compare_symtabs, filter_sals): New functions.
* breakpoint.h (struct bp_location) <line_number, source_file>:
New fields.
(struct breakpoint) <line_number, source_file>: Remove.
<filter>: New field.
* breakpoint.c (print_breakpoint_location, init_raw_breakpoint)
(momentary_breakpoint_from_master, add_location_to_breakpoint):
Update for changes to locations.
(init_breakpoint_sal): Add 'filter' argument. Set 'filter' on
breakpoint.
(create_breakpoint_sal): Add 'filter' argument.
(remove_sal, expand_line_sal_maybe): Remove.
(create_breakpoints_sal): Remove 'sals' argument. Handle
pre-expanded sals and the filter.
(parse_breakpoint_sals): Use decode_line_full.
(check_fast_tracepoint_sals): Use get_sal_arch.
(create_breakpoint): Create a linespec_sals. Update.
(break_range_command): Use decode_line_full. Update.
(until_break_command): Update.
(clear_command): Update match conditions for linespec.c changes.
Use DECODE_LINE_LIST_MODE.
(say_where): Update for changes to locations.
(bp_location_dtor): Free 'source_file'.
(base_breakpoint_dtor): Free 'filter'. Don't free 'source_file'.
(update_static_tracepoint): Update for changes to locations.
(update_breakpoint_locations): Disable ranged breakpoint if too
many locations match. Update.
(addr_string_to_sals): Use decode_line_full. Resolve all sal
PCs.
(breakpoint_re_set_default): Don't call expand_line_sal_maybe.
(decode_line_spec_1): Update. Change argument name to 'flags',
change interpretation.
* block.h (block_containing_function): Declare.
* block.c (block_containing_function): New function.
* skip.c (skip_function_command): Update.
(skip_re_set): Update.
* infcmd.c (jump_command): Use DECODE_LINE_FUNFIRSTLINE.
* mi/mi-main.c (mi_cmd_trace_find): Use DECODE_LINE_FUNFIRSTLINE.
* NEWS: Add entry.
2011-12-06 Tom Tromey <tromey@redhat.com>
* elfread.c (elf_gnu_ifunc_resolver_return_stop): Allow
breakpoint's pspace to be NULL.
* breakpoint.h (struct breakpoint) <pspace>: Update comment.
* breakpoint.c (init_raw_breakpoint): Conditionally set
breakpoint's pspace.
(init_breakpoint_sal): Don't set breakpoint's pspace.
(prepare_re_set_context): Conditionally switch program space.
(addr_string_to_sals): Check executing_startup on location's
program space.
2011-12-06 Tom Tromey <tromey@redhat.com>
* breakpoint.h (enum enable_state) <bp_startup_disabled>: Remove.
* breakpoint.c (should_be_inserted): Explicitly check if program
space is executing startup.
(describe_other_breakpoints): Update.
(disable_breakpoints_before_startup): Change executing_startup
earlier. Remove loop.
(enable_breakpoints_after_startup): Likewise.
(init_breakpoint_sal): Don't use bp_startup_disabled.
(create_breakpoint): Don't use bp_startup_disabled.
(update_global_location_list): Use should_be_inserted.
(bkpt_re_set): Update.
gdb/testsuite
2011-12-06 Joel Brobecker <brobecker@acacore.com>
* gdb.ada/fullname_bp.exp: Add tests for other valid linespecs
involving a fully qualified function name.
2011-12-06 Tom Tromey <tromey@redhat.com>
* gdb.ada/homonym.exp: Add three breakpoint tests.
2011-12-06 Tom Tromey <tromey@redhat.com>
* gdb.base/solib-weak.exp (do_test): Remove kfail.
* gdb.trace/tracecmd.exp: Disable pending breakpoints earlier.
* gdb.objc/objcdecode.exp: Update for output changes.
* gdb.linespec/linespec.exp: New file.
* gdb.linespec/lspec.cc: New file.
* gdb.linespec/lspec.h: New file.
* gdb.linespec/body.h: New file.
* gdb.linespec/base/two/thefile.cc: New file.
* gdb.linespec/base/one/thefile.cc: New file.
* gdb.linespec/Makefile.in: New file.
* gdb.cp/templates.exp (test_template_breakpoints): Update for
output changes.
* gdb.cp/re-set-overloaded.exp: Remove kfail.
* gdb.cp/ovldbreak.exp: Update for output changes. "all" test now
makes one breakpoint.
* gdb.cp/method2.exp (test_break): Update for output changes.
* gdb.cp/mb-templates.exp: Update for output changes.
* gdb.cp/mb-inline.exp: Update for output changes.
* gdb.cp/mb-ctor.exp: Update for output changes.
* gdb.cp/ovsrch.exp: Use fully-qualified names.
* gdb.base/solib-symbol.exp: Run to main later. Breakpoint now
has multiple matches.
* gdb.base/sepdebug.exp: Disable pending breakpoints. Update for
error message change.
* gdb.base/list.exp (test_list_filename_and_number): Update for
error message change.
* gdb.base/break.exp: Disable pending breakpoints. Update for
output changes.
* configure.ac: Add gdb.linespec.
* configure: Rebuild.
* Makefile.in (ALL_SUBDIRS): Add gdb.linespec.
gdb/doc
2011-12-06 Tom Tromey <tromey@redhat.com>
* gdb.texinfo (Set Breaks): Update for new behavior.
2011-12-06 18:54:43 +00:00
"No line 999 in the current file." \
2010-05-27 23:39:56 +00:00
"break on non-existent source line"
1999-04-16 01:35:26 +00:00
2003-01-16 01:56:16 +00:00
# Run to the desired default location. If not positioned here, the
# tests below don't work.
#
2010-05-27 23:39:56 +00:00
gdb_test "until $bp_location1" "main .* at .*:$bp_location1.*" \
"until bp_location1"
2003-01-16 01:56:16 +00:00
1999-04-16 01:35:26 +00:00
# Verify that GDB allows one to just say "break", which is treated
# as the "default" breakpoint. Note that GDB gets cute when printing
# the informational message about other breakpoints at the same
# location. We'll hit that bird with this stone too.
#
2010-05-27 23:39:56 +00:00
gdb_test "break" "Breakpoint \[0-9\]*.*" \
"break on default location, 1st time"
1999-04-16 01:35:26 +00:00
2010-05-27 23:39:56 +00:00
gdb_test "break" \
"Note: breakpoint \[0-9\]* also set at .*Breakpoint \[0-9\]*.*" \
"break on default location, 2nd time"
1999-04-16 01:35:26 +00:00
2010-05-27 23:39:56 +00:00
gdb_test "break" \
"Note: breakpoints \[0-9\]* and \[0-9\]* also set at .*Breakpoint \[0-9\]*.*" \
"break on default location, 3rd time"
1999-04-16 01:35:26 +00:00
2010-05-27 23:39:56 +00:00
gdb_test "break" \
"Note: breakpoints \[0-9\]*, \[0-9\]* and \[0-9\]* also set at .*Breakpoint \[0-9\]*.*" \
"break on default location, 4th time"
1999-04-16 01:35:26 +00:00
# Verify that a "silent" breakpoint can be set, and that GDB is indeed
# "silent" about its triggering.
#
if ![runto_main] then { fail "break tests suppressed" }
2010-05-27 23:39:56 +00:00
gdb_test_multiple "break $bp_location1" \
"set to-be-silent break bp_location1" {
-re "Breakpoint (\[0-9\]*) at .*, line $bp_location1.*$gdb_prompt $" {
pass "set to-be-silent break bp_location1"
}
}
1999-04-16 01:35:26 +00:00
2011-12-26 11:24:55 +00:00
gdb_test "commands $expect_out(1,string)\nsilent\nend" ">end" "set silent break bp_location1"
1999-04-16 01:35:26 +00:00
2010-05-27 23:39:56 +00:00
gdb_test "info break $expect_out(1,string)" \
"\[0-9\]*\[ \t\]*breakpoint.*:$bp_location1\r\n\[ \t\]*silent.*" \
"info silent break bp_location1"
gdb_test "continue" "Continuing." \
"hit silent break bp_location1"
gdb_test "bt" "#0 main .* at .*:$bp_location1.*" \
"stopped for silent break bp_location1"
1999-04-16 01:35:26 +00:00
# Verify that GDB can at least parse a breakpoint with the
# "thread" keyword. (We won't attempt to test here that a
# thread-specific breakpoint really triggers appropriately.
# The gdb.threads subdirectory contains tests for that.)
#
2003-11-13 15:34:39 +00:00
set bp_location12 [gdb_get_line_number "set breakpoint 12 here"]
2010-05-27 23:39:56 +00:00
gdb_test "break $bp_location12 thread 999" "Unknown thread 999.*" \
"thread-specific breakpoint on non-existent thread disallowed"
gdb_test "break $bp_location12 thread foo" \
"Junk after thread keyword.*" \
"thread-specific breakpoint on bogus thread ID disallowed"
1999-04-16 01:35:26 +00:00
# Verify that GDB responds gracefully to a breakpoint command with
# trailing garbage.
#
2010-05-27 23:39:56 +00:00
gdb_test "break $bp_location12 foo" \
2012-04-05 18:50:29 +00:00
"malformed linespec error: unexpected string, \"foo\".*" \
2010-05-27 23:39:56 +00:00
"breakpoint with trailing garbage disallowed"
1999-04-16 01:35:26 +00:00
# Verify that GDB responds gracefully to a "clear" command that has
# no matching breakpoint. (First, get us off the current source line,
# which we know has a breakpoint.)
#
2010-05-27 23:39:56 +00:00
gdb_test "next" "marker1.*" "step over breakpoint"
gdb_test "clear 81" "No breakpoint at 81.*" \
"clear line has no breakpoint disallowed"
gdb_test "clear" "No breakpoint at this line.*" \
"clear current line has no breakpoint disallowed"
1999-04-16 01:35:26 +00:00
2000-12-09 22:35:05 +00:00
# Verify that we can set and clear multiple breakpoints.
#
# We don't test that it deletes the correct breakpoints. We do at
# least test that it deletes more than one breakpoint.
#
gdb_test "break marker3" "Breakpoint.*at.*" "break marker3 #1"
gdb_test "break marker3" "Breakpoint.*at.*" "break marker3 #2"
gdb_test "clear marker3" {Deleted breakpoints [0-9]+ [0-9]+.*}
1999-04-16 01:35:26 +00:00
# Verify that a breakpoint can be set via a convenience variable.
#
2010-05-27 23:39:56 +00:00
gdb_test_no_output "set \$foo=$bp_location11" \
"set convenience variable \$foo to bp_location11"
gdb_test "break \$foo" \
"Breakpoint (\[0-9\]*) at .*, line $bp_location11.*" \
"set breakpoint via convenience variable"
1999-04-16 01:35:26 +00:00
# Verify that GDB responds gracefully to an attempt to set a
# breakpoint via a convenience variable whose type is not integer.
#
2010-05-27 23:39:56 +00:00
gdb_test_no_output "set \$foo=81.5" \
"set convenience variable \$foo to 81.5"
gdb_test "break \$foo" \
"Convenience variables used in line specs must have integer values.*" \
"set breakpoint via non-integer convenience variable disallowed"
1999-04-16 01:35:26 +00:00
# Verify that we can set and trigger a breakpoint in a user-called function.
#
2010-05-27 23:39:56 +00:00
gdb_test "break marker2" \
2014-10-22 09:24:25 +00:00
"Breakpoint (\[0-9\]*) at .*, line $bp_location8.*" \
2010-05-27 23:39:56 +00:00
"set breakpoint on to-be-called function"
gdb_test "print marker2(99)" \
"The program being debugged stopped while in a function called from GDB.\r\nEvaluation of the expression containing the function\r\n.marker2$proto. will be abandoned.\r\nWhen the function is done executing, GDB will silently stop.*" \
"hit breakpoint on called function"
1999-04-16 01:35:26 +00:00
# As long as we're stopped (breakpointed) in a called function,
# verify that we can successfully backtrace & such from here.
#
2000-11-17 16:24:48 +00:00
# In this and the following test, the _sr4export check apparently is needed
# for hppa*-*-hpux.
#
2010-05-27 23:39:56 +00:00
gdb_test_multiple "bt" "backtrace while in called function" {
2014-10-22 09:24:25 +00:00
-re "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1.*_sr4export.*$gdb_prompt $" {
2010-05-27 23:39:56 +00:00
pass "backtrace while in called function"
}
2014-10-22 09:24:25 +00:00
-re "#0\[ \t\]*($hex in )?marker2.*:$bp_location8\r\n#1.*function called from gdb.*$gdb_prompt $" {
2010-05-27 23:39:56 +00:00
pass "backtrace while in called function"
}
2000-11-17 16:24:48 +00:00
}
# Return from the called function. For remote targets, it's important to do
# this before runto_main, which otherwise may silently stop on the dummy
# breakpoint inserted by GDB at the program's entry point.
#
2010-05-27 23:39:56 +00:00
gdb_test_multiple "finish" "finish from called function" {
2014-10-22 09:24:25 +00:00
-re "Run till exit from .*marker2.* at .*$bp_location8\r\n.* in _sr4export.*$gdb_prompt $" {
2010-05-27 23:39:56 +00:00
pass "finish from called function"
}
2014-10-22 09:24:25 +00:00
-re "Run till exit from .*marker2.* at .*$bp_location8\r\n.*function called from gdb.*$gdb_prompt $" {
2010-05-27 23:39:56 +00:00
pass "finish from called function"
}
2014-10-22 09:24:25 +00:00
-re "Run till exit from .*marker2.* at .*$bp_location8\r\n.*Value returned.*$gdb_prompt $" {
2010-05-27 23:39:56 +00:00
pass "finish from called function"
}
1999-04-16 01:35:26 +00:00
}
# Verify that GDB responds gracefully to a "finish" command with
# arguments.
#
if ![runto_main] then { fail "break tests suppressed" }
send_gdb "finish 123\n"
gdb_expect {
-re "The \"finish\" command does not take any arguments.\r\n$gdb_prompt $"\
{pass "finish with arguments disallowed"}
-re "$gdb_prompt $"\
{fail "finish with arguments disallowed"}
timeout {fail "(timeout) finish with arguments disallowed"}
}
# Verify that GDB responds gracefully to a request to "finish" from
1999-04-26 18:34:20 +00:00
# the outermost frame. On a stub that never exits, this will just
# run to the stubs routine, so we don't get this error... Thus the
# second condition.
1999-04-16 01:35:26 +00:00
#
1999-04-26 18:34:20 +00:00
2010-05-27 23:39:56 +00:00
gdb_test_multiple "finish" "finish from outermost frame disallowed" {
-re "\"finish\" not meaningful in the outermost frame.\r\n$gdb_prompt $" {
pass "finish from outermost frame disallowed"
}
-re "Run till exit from.*\r\n$gdb_prompt $" {
pass "finish from outermost frame disallowed"
}
1999-04-16 01:35:26 +00:00
}
# Verify that we can explicitly ask GDB to stop on all shared library
# events, and that it does so.
#
if [istarget "hppa*-*-hpux*"] then {
2010-05-27 23:39:56 +00:00
if ![runto_main] then { fail "break tests suppressed" }
gdb_test_no_output "set stop-on-solib-events 1" \
"set stop-on-solib-events"
gdb_test "run" \
"Stopped due to shared library event.*" \
"triggered stop-on-solib-events" \
"Start it from the beginning.*y or n. $" \
"y"
gdb_test_no_output "set stop-on-solib-events 0" \
"reset stop-on-solib-events"
1999-04-16 01:35:26 +00:00
}
# Hardware breakpoints are unsupported on HP-UX. Verify that GDB
# gracefully responds to requests to create them.
#
if [istarget "hppa*-*-hpux*"] then {
2010-05-27 23:39:56 +00:00
if ![runto_main] then { fail "break tests suppressed" }
gdb_test "hbreak" \
"No hardware breakpoint support in the target.*" \
"hw breaks disallowed"
gdb_test "thbreak" \
"No hardware breakpoint support in the target.*" \
"temporary hw breaks disallowed"
1999-04-16 01:35:26 +00:00
}
#********
#
# Test "next" over recursive function call.
#
proc test_next_with_recursion {} {
global gdb_prompt
global decimal
global binfile
2007-03-27 17:59:38 +00:00
gdb_test "kill" "" "kill program" "Kill the program being debugged.*y or n. $" "y"
delete_breakpoints
1999-04-16 01:35:26 +00:00
gdb_test "break factorial" "Breakpoint $decimal at .*" "break at factorial"
# Run until we call factorial with 6
2007-03-27 17:59:38 +00:00
gdb_run_cmd
2014-09-12 21:16:31 +00:00
gdb_test "" "Break.* factorial .value=6. .*" "run to factorial(6)"
1999-04-16 01:35:26 +00:00
# Continue until we call factorial recursively with 5.
if [gdb_test "continue" \
"Continuing.*Break.* factorial .value=5. .*" \
"continue to factorial(5)"] then { gdb_suppress_tests }
# Do a backtrace just to confirm how many levels deep we are.
if [gdb_test "backtrace" \
"#0\[ \t\]+ factorial .value=5..*" \
"backtrace from factorial(5)"] then { gdb_suppress_tests }
# Now a "next" should position us at the recursive call, which
# we will be performing with 4.
if [gdb_test "next" \
".* factorial .value - 1.;.*" \
"next to recursive call"] then { gdb_suppress_tests }
# Disable the breakpoint at the entry to factorial by deleting them all.
# The "next" should run until we return to the next line from this
# recursive call to factorial with 4.
# Buggy versions of gdb will stop instead at the innermost frame on
# the line where we are trying to "next" to.
delete_breakpoints
if [istarget "mips*tx39-*"] {
set timeout 60
}
2001-12-07 21:02:31 +00:00
# We used to set timeout here for all other targets as well. This
# is almost certainly wrong. The proper timeout depends on the
# target system in use, and how we communicate with it, so there
# is no single value appropriate for all targets. The timeout
# should be established by the Dejagnu config file(s) for the
# board, and respected by the test suite.
#
# For example, if I'm running GDB over an SSH tunnel talking to a
# portmaster in California talking to an ancient 68k board running
# a crummy ROM monitor (a situation I can only wish were
# hypothetical), then I need a large timeout. But that's not the
# kind of knowledge that belongs in this file.
1999-04-16 01:35:26 +00:00
gdb_test next "\[0-9\]*\[\t \]+return \\(value\\);.*" \
"next over recursive call"
# OK, we should be back in the same stack frame we started from.
# Do a backtrace just to confirm.
set result [gdb_test "backtrace" \
"#0\[ \t\]+ factorial .value=120.*\r\n#1\[ \t\]+ \[0-9a-fx\]+ in factorial .value=6..*" \
"backtrace from factorial(5.1)"]
if { $result != 0 } { gdb_suppress_tests }
if [target_info exists gdb,noresults] { gdb_suppress_tests }
1999-04-26 18:34:20 +00:00
gdb_continue_to_end "recursive next test"
2013-06-07 17:31:09 +00:00
gdb_stop_suppressing_tests
1999-04-16 01:35:26 +00:00
}
test_next_with_recursion
2000-03-24 21:35:42 +00:00
#********
# build a new file with optimization enabled so that we can try breakpoints
# on targets with optimized prologues
2008-04-07 16:32:44 +00:00
if { [prepare_for_testing break.exp "breako2" {break.c break1.c} {debug nowarnings optimize=-O2}] } {
2000-03-24 21:35:42 +00:00
return -1
}
#
# test break at function
#
gdb_test "break main" \
2006-05-05 22:45:35 +00:00
"Breakpoint.*at.* file .*, line.*" \
2000-03-24 21:35:42 +00:00
"breakpoint function, optimized file"
#
# test break at function
#
gdb_test "break marker4" \
2003-12-09 18:19:20 +00:00
"Breakpoint.*at.* file .*$srcfile1, line.*" \
2000-03-24 21:35:42 +00:00
"breakpoint small function, optimized file"
#
# run until the breakpoint at main is hit. For non-stubs-using targets.
#
2007-03-27 17:59:38 +00:00
gdb_run_cmd
2014-09-12 21:16:31 +00:00
set test "run until function breakpoint, optimized file"
gdb_test_multiple "" $test {
2007-03-27 17:59:38 +00:00
-re "Breakpoint \[0-9\]+,.*main .*argc.*argv.* at .*$srcfile:$bp_location6.*$bp_location6\[\t \]+if .argc.* \{.*$gdb_prompt $" {
2014-09-12 21:16:31 +00:00
pass $test
2000-03-24 21:35:42 +00:00
}
2007-03-27 17:59:38 +00:00
-re "Breakpoint \[0-9\]+,.*main .*argc.*argv.* at .*$gdb_prompt $" {
2014-09-12 21:16:31 +00:00
pass "$test (code motion)"
2000-03-24 21:35:42 +00:00
}
}
#
# run until the breakpoint at a small function
#
2000-05-17 17:10:19 +00:00
#
# Add a second pass pattern. The behavior differs here between stabs
# and dwarf for one-line functions. Stabs preserves two line symbols
# (one before the prologue and one after) with the same line number,
# but dwarf regards these as duplicates and discards one of them.
# Therefore the address after the prologue (where the breakpoint is)
# has no exactly matching line symbol, and GDB reports the breakpoint
# as if it were in the middle of a line rather than at the beginning.
2003-12-09 18:19:20 +00:00
set bp_location14 [gdb_get_line_number "set breakpoint 14 here" $srcfile1]
2010-05-27 23:39:56 +00:00
gdb_test_multiple "continue" \
"run until breakpoint set at small function, optimized file" {
gdb/
Display @entry parameter values (without references).
* dwarf2expr.c (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset):
New functions.
* dwarf2expr.h (dwarf_block_to_fb_offset, dwarf_block_to_sp_offset):
New declarations.
* dwarf2loc.c (dwarf2_find_location_expression): Support location list
entry record.
(dwarf_entry_parameter_to_value, value_of_dwarf_reg_entry)
(value_of_dwarf_block_entry, locexpr_read_variable_at_entry): New
functions.
(dwarf2_locexpr_funcs): Install locexpr_read_variable_at_entry.
(loclist_read_variable_at_entry): New function.
(dwarf2_loclist_funcs): Install loclist_read_variable_at_entry.
* dwarf2read.c (read_call_site_scope): Support also DW_OP_fbreg in
DW_AT_location, call dwarf_block_to_sp_offset for it.
* frame.h (print_entry_values_no, print_entry_values_only)
(print_entry_values_preferred, print_entry_values_if_needed)
(print_entry_values_both, print_entry_values_compact)
(print_entry_values_default, print_entry_values): New declarations.
(struct frame_arg): New field entry_kind.
(read_frame_arg): New parameter entryargp.
* mi/mi-cmd-stack.c (list_arg_or_local): New gdb_assert for
arg->entry_kind. Optionally print the `@entry' suffix.
(list_args_or_locals): New variable entryarg, initialize it.
Initialize also entry_kind of arg and entryarg. Conditionalize
list_arg_or_local for arg, add list_arg_or_local for entryarg. Call
xfree for entryarg.error.
* stack.c (print_entry_values_no, print_entry_values_only)
(print_entry_values_preferred, print_entry_values_if_needed)
(print_entry_values_both, print_entry_values_compact)
(print_entry_values_default, print_entry_values_choices)
(print_entry_values): New variables.
(print_frame_arg): New gdb_assert for arg->entry_kind. Optionally
print the `@entry' suffix, possibly in combination for
print_entry_values_compact.
(read_frame_arg): New parameter entryargp, new variables entryval,
entryval_error and val_equal. Read in also entryargp, respect
print_entry_values, compare the values using val_equal, fill in also
argp->entry_kind (together with entryargp->entry_kind).
(print_frame_args): New variable entryarg, initialize it.
Conditionalize print_frame_arg for arg, add print_frame_arg for
entryarg. Call xfree for entryarg.error.
(_initialize_stack): Call add_setshow_enum_cmd for `entry-values'.
* symtab.h (struct symbol_computed_ops): New field
read_variable_at_entry.
gdb/doc/
Display @entry parameter values (without references).
* gdb.texinfo (Tail Call Frames): Add anchor. Add self tail call
example.
(Print Settings): New description of set print entry-values and show
print entry-values.
gdb/testsuite/
Display @entry parameter values (without references).
* gdb.arch/amd64-entry-value.cc (locexpr, stacktest, data, data2)
(different, validity, invalid): New functions.
(main): Call them.
* gdb.arch/amd64-entry-value.exp: New breakpoints breakhere_locexpr,
stacktest, breakhere_stacktest, different, breakhere_different,
breakhere_validity and breakhere_invalid.
(entry: bt): Update for @entry.
(entry_locexpr: *, entry_stack: *, entry_equal: *, entry_different: *)
(entry_validity: *, entry_invalid: *): Many new tests.
* gdb.base/break.exp
(run until breakpoint set at small function, optimized file): Accept
also the @entry suffix.
* gdb.mi/Makefile.in (PROGS): Add mi2-amd64-entry-value.
* gdb.mi/mi2-amd64-entry-value.c: New files.
* gdb.mi/mi2-amd64-entry-value.exp: New files.
2011-10-09 19:34:19 +00:00
-re "Breakpoint $decimal, marker4 \\(d=(d@entry=)?177601976\\) at .*$srcfile1:$bp_location14\[\r\n\]+$bp_location14\[\t \]+void marker4.*" {
2010-05-27 23:39:56 +00:00
pass "run until breakpoint set at small function, optimized file (line bp_location14)"
}
-re "Breakpoint $decimal, factorial \\(.*\\) .*\{\r\n$gdb_prompt" {
# GCC 4.3 emits bad line number information - see gcc/36748.
if { [test_compiler_info "gcc-4-3-*"] } {
setup_xfail *-*-*
}
fail "run until breakpoint set at small function, optimized file"
gdb/
* NEWS: Document inlined function support.
* Makefile.in (SFILES): Add inline-frame.c.
(COMMON_OBS): Add inline-frame.o.
* block.c (contained_in): Rewrite to use lexical nesting.
(block_linkage_function): Skip inlined function blocks.
(block_inlined_p): New.
* block.h (struct block): Update comment.
(block_inlined_p): New prototype.
* blockframe.c (get_frame_block): Handle inlined functions.
(get_frame_function): Do not use block_linkage_function.
(block_innermost_frame): Use get_frame_block and contained_in.
* breakpoint.c (watchpoint_check): Remove extra reinit_frame_cache.
Skip over inlined functions. Simplify epilogue check.
(bpstat_check_breakpoint_conditions): Use get_stack_frame_id.
Update comments.
(set_momentary_breakpoint): Only accept non-inlined frames.
(watch_command_1): Use frame_unwind_caller_pc and
frame_unwind_caller_id instead of get_prev_frame.
(until_break_command): Likewise. Use get_stack_frame_id.
* buildsym.c (end_symtab): Set SYMBOL_SYMTAB for block functions.
* dwarf2loc.c (dwarf_expr_frame_base): Use block_linkage_function.
* dwarf2read.c (process_die): Handle DW_TAG_inlined_subroutine.
(read_func_scope, new_symbol): Likewise. Handle arguments specially
for inlined functions without call site information.
(inherit_abstract_dies): Allow tag mismatch for inlined subroutines.
(die_specification): Treat DW_AT_abstract_origin as a specification.
(read_type_die): Handle DW_TAG_inlined_subroutine.
* frame-unwind.c (frame_unwind_init): Add inline_frame_unwind.
* frame.c (fprint_frame_id): Print inline depth.
(fprint_frame_type): Handle INLINE_FRAME and SENTINEL_FRAME.
(skip_inlined_frames, get_stack_frame_id): New.
(frame_unwind_caller_id): Use skip_inlined_frames.
(frame_id_inlined_p): New.
(frame_id_eq): Make the logic match the comments. Add inline_depth
check.
(frame_id_inner): Handle inlined functions.
(frame_unwind_pc): New function, copied from frame_unwind_caller_pc.
(frame_unwind_caller_pc): Use skip_inlined_frames and frame_unwind_pc.
(get_prev_frame_1): Check for inline frames. Split out frame
allocation to get_prev_frame_raw.
(get_prev_frame_raw): New function.
(get_prev_frame): Handle inline frames.
(get_frame_pc): Use frame_unwind_pc.
(get_frame_address_in_block): Skip inlined frames on both sides.
(pc_notcurrent): Delete.
(find_frame_sal): Rewrite to handle inline call sites. Use
get_frame_address_in_block.
(deprecated_update_frame_pc_hack): Make static.
* frame.h: Update comments.
(struct frame_id): Add inline_depth.
(enum frame_type): Add INLINE_FRAME.
(frame_id_inlined_p, get_stack_frame_id): New prototypes.
* gdbthread.h (struct thread_info): Add step_stack_frame_id field.
* infcmd.c (set_step_frame): New function.
(step_once): Use set_step_frame. Handle inlined functions.
(until_next_command): Use set_step_frame.
(finish_backward), finish_forward): Use get_stack_frame_id.
(finish_command): Support inlined functions.
* inferior.h (set_step_info): New prototype.
* infrun.c (RESUME_ALL): Use minus_one_ptid.
(clear_proceed_status): Clear step_stack_frame_id.
(init_wait_for_inferior): Call clear_inline_frame_state.
(init_execution_control_state): Make static.
(set_step_info): New function.
(init_thread_stepping_state): Do not set the symtab or line here.
(stepped_in_from): New function.
(handle_inferior_event): Handle inlined functions. Use set_step_info.
(insert_step_resume_breakpoint_at_frame): Use get_stack_frame_id.
(struct inferior_status): Add step_stack_frame_id.
(save_inferior_status, restore_inferior_status): Save and restore
step_stack_frame_id.
* inline-frame.c, inline-frame.h: New files.
* minsyms.c (prim_record_minimal_symbol_and_info): Use XCALLOC.
* regcache.c (regcache_write_pc): Call reinit_frame_cache.
* s390-tdep.c (s390_prologue_frame_unwind_cache): Handle INLINE_FRAME.
* stack.c (frame_show_address): New.
(print_frame_info, print_frame): Use it.
(find_frame_funname): Use get_frame_function. Handle inlined blocks.
(frame_info): Mark inlined functions.
(backtrace_command_1): Use get_current_user_frame.
(print_frame_local_vars, print_frame_label_vars): Update comments.
(return_command): Refuse inlined functions.
* symtab.c (lookup_symbol_aux_local): Stop at inlined function
boundaries.
(find_function_start_sal): Avoid inlined functions.
(completion_list_add_fields): New function.
(default_make_symbol_completion_list): Use it. Use block_static_block
and block_global_block. Check for inlined functions.
(skip_prologue_using_sal): Avoid line number comparison across
inlining.
* symtab.h (struct symbol): Add is_inlined.
(SYMBOL_INLINED): New.
* target.c (target_resume): Call clear_inline_frame_state.
* valops.c (value_of_variable): Check block_inlined_p.
gdb/doc/
* gdb.texinfo (Debugging Optimized Code): New chapter.
(Compiling for Debugging): Reference it. Move some
text to the new section.
gdb/testsuite/
* gdb.base/break.exp: Add an XFAIL for gcc/36748.
* gdb.cp/annota2.exp: Accept frames-invalid in more places.
* gdb.opt/Makefile.in (EXECUTABLES): Update.
* gdb.opt/clobbered-registers-O2.exp: Update to GPL v3.
* gdb.opt/inline-bt.c, gdb.opt/inline-bt.exp,
gdb.opt/inline-cmds.c, gdb.opt/inline-cmds.exp,
gdb.opt/inline-locals.c, gdb.opt/inline-locals.exp,
gdb.opt/inline-markers.c: New files.
* lib/gdb.exp (skip_inline_frame_tests): New function.
(skip_inline_var_tests): New function.
2009-06-28 00:20:24 +00:00
}
2000-05-17 17:10:19 +00:00
}
2000-03-24 21:35:42 +00:00
2008-04-07 16:32:44 +00:00
clean_restart breako2
2008-03-21 15:33:11 +00:00
#
# test that 'rbreak' on a symbol that may be from a shared library doesn't
# cause a "Junk at end of arguments." error.
#
# On x86 GNU/Linux, this test will choke on e.g. __libc_start_main@plt.
#
# Note that this test won't necessarily choke on all targets even if
# all the rbreak issue is present. rbreak needs to match and set a
# breakpoint on a symbol causes 'break' to choke.
#
2010-06-01 21:29:21 +00:00
gdb_test_no_output "set breakpoint pending on" "rbreak junk pending setup"
2008-03-21 15:33:11 +00:00
# We expect at least one breakpoint to be set when we "rbreak main".
gdb_test "rbreak main" \
".*Breakpoint.*at.* file .*$srcfile, line.*" \
"rbreak junk set breakpoint"
# Run to a breakpoint. Fail if we see "Junk at end of arguments".
gdb_run_cmd
2014-09-12 21:16:31 +00:00
set test "rbreak junk"
gdb_test_multiple "" $test {
2008-03-21 15:33:11 +00:00
-re "Junk at end of arguments" {
2014-09-12 21:16:31 +00:00
fail $test
2008-03-21 15:33:11 +00:00
}
-re ".*Breakpoint \[0-9\]+,.*$gdb_prompt $" {
2014-09-12 21:16:31 +00:00
pass $test
2008-03-21 15:33:11 +00:00
}
}
? .deps
? Makefile
? ada-exp.c
? ada-lex.c
? build-gnulib
? c-exp.c
? config.cache
? config.h
? config.log
? config.status
? cp-name-parser.c
? f-exp.c
? gcore
? gdb
? gdb-gdb.gdb
? go-exp.c
? init.c
? jit-reader.h
? jv-exp.c
? m2-exp.c
? observer.h
? observer.inc
? p-exp.c
? stamp-h
? stamp-xml
? version.c
? xml-builtin.c
? data-directory/Makefile
? data-directory/python
? data-directory/stamp-python
? data-directory/stamp-syscalls
? data-directory/stamp-system-gdbinit
? data-directory/syscalls
? data-directory/system-gdbinit
? doc/Makefile
? gdbserver/.deps
? gdbserver/Makefile
? gdbserver/build-gnulib-gdbserver
? gdbserver/config.cache
? gdbserver/config.h
? gdbserver/config.log
? gdbserver/config.status
? gdbserver/gdbreplay
? gdbserver/gdbserver
? gdbserver/i386-avx-linux.c
? gdbserver/i386-linux.c
? gdbserver/i386-mmx-linux.c
? gdbserver/stamp-h
? gdbserver/stamp-xml
? gdbserver/version.c
? gdbserver/xml-builtin.c
? testsuite/Makefile
? testsuite/config.log
? testsuite/config.status
? testsuite/gdb.log
? testsuite/gdb.sum
? testsuite/site.exp
? testsuite/gdb.ada/Makefile
? testsuite/gdb.arch/Makefile
? testsuite/gdb.asm/Makefile
? testsuite/gdb.base/Makefile
? testsuite/gdb.btrace/Makefile
? testsuite/gdb.cell/Makefile
? testsuite/gdb.cp/Makefile
? testsuite/gdb.disasm/Makefile
? testsuite/gdb.dwarf2/Makefile
? testsuite/gdb.fortran/Makefile
? testsuite/gdb.go/Makefile
? testsuite/gdb.hp/Makefile
? testsuite/gdb.hp/gdb.aCC/Makefile
? testsuite/gdb.hp/gdb.base-hp/Makefile
? testsuite/gdb.hp/gdb.compat/Makefile
? testsuite/gdb.hp/gdb.defects/Makefile
? testsuite/gdb.hp/gdb.objdbg/Makefile
? testsuite/gdb.java/Makefile
? testsuite/gdb.linespec/Makefile
? testsuite/gdb.mi/Makefile
? testsuite/gdb.modula2/Makefile
? testsuite/gdb.multi/Makefile
? testsuite/gdb.objc/Makefile
? testsuite/gdb.opencl/Makefile
? testsuite/gdb.opt/Makefile
? testsuite/gdb.pascal/Makefile
? testsuite/gdb.python/Makefile
? testsuite/gdb.reverse/Makefile
? testsuite/gdb.server/Makefile
? testsuite/gdb.stabs/Makefile
? testsuite/gdb.threads/Makefile
? testsuite/gdb.threads/threadapply
? testsuite/gdb.trace/Makefile
? testsuite/gdb.xml/Makefile
RCS file: /cvs/src/src/gdb/.dir-locals.el,v
Working file: .dir-locals.el
head: 1.2
branch:
locks: strict
access list:
symbolic names:
gdb_7_6-2013-04-26-release: 1.2
gdb_7_6-branch: 1.2.0.2
gdb_7_6-2013-03-12-branchpoint: 1.2
gdb_7_5_1-2012-11-29-release: 1.1
gdb_7_5-2012-08-17-release: 1.1
gdb_7_5-branch: 1.1.0.2
gdb_7_5-2012-07-18-branchpoint: 1.1
keyword substitution: kv
total revisions: 2; selected revisions: 2
description:
----------------------------
revision 1.2
date: 2013/01/01 06:32:34; author: brobecke; state: Exp; lines: +1 -1
Update years in copyright notice for the GDB files.
Two modifications:
1. The addition of 2013 to the copyright year range for every file;
2. The use of a single year range, instead of potentially multiple
year ranges, as approved by the FSF.
----------------------------
revision 1.1
date: 2012/03/28 17:35:38; author: tromey; state: Exp;
* .dir-locals.el: New file.
=============================================================================
RCS file: /cvs/src/src/gdb/.gitignore,v
Working file: .gitignore
head: 1.5
branch:
locks: strict
access list:
symbolic names:
gdb_7_6-2013-04-26-release: 1.4
gdb_7_6-branch: 1.4.0.2
gdb_7_6-2013-03-12-branchpoint: 1.4
gdb_7_5_1-2012-11-29-release: 1.3
gdb_7_5-2012-08-17-release: 1.3
gdb_7_5-branch: 1.3.0.2
gdb_7_5-2012-07-18-branchpoint: 1.3
gdb_7_4_1-2012-04-26-release: 1.1
gdb_7_4-2012-01-24-release: 1.1
gdb_7_4-branch: 1.1.0.4
gdb_7_4-2011-12-13-branchpoint: 1.1
gdb_7_3_1-2011-09-04-release: 1.1
gdb_7_3-2011-07-26-release: 1.1
gdb_7_3-branch: 1.1.0.2
gdb_7_3-2011-04-01-branchpoint: 1.1
keyword substitution: kv
total revisions: 5; selected revisions: 5
description:
----------------------------
revision 1.5
date: 2013/06/17 04:39:15; author: vapier; state: Exp; lines: +1 -0
gdb: ignore generated gcore
----------------------------
revision 1.4
date: 2012/08/13 15:43:59; author: vapier; state: Exp; lines: +1 -0
gdb: ignore generated go-exp.c
----------------------------
revision 1.3
date: 2012/03/21 04:53:29; author: vapier; state: Exp; lines: +2 -0
gdb: update gitignore
----------------------------
revision 1.2
date: 2012/01/02 02:28:56; author: jkratoch; state: Exp; lines: +0 -1
gdb/
Remove the gdbtui binary.
* .gitignore (/gdbtui): Remove.
* Makefile.in (TUI): Remove.
(SUBDIR_TUI_OBS): Remove tui-main.o.
(SUBDIR_TUI_SRCS): Remove tui/tui-main.c.
(all-tui, install-tui, uninstall-tui, $(TUI)$(EXEEXT), clean-tui)
(tui-main.o): Remove.
(all_object_files): Remove tui-main.o.
* NEWS: New note for the gdbtui removal.
* configure: Rebuilt.
* configure.ac: No longer add all-tui, clean-tui, install-tui and
uninstall-tui to CONFIG_ALL, CONFIG_CLEAN, CONFIG_INSTALL and
CONFIG_UNINSTALL respectively.
* gdb.c (main): Remove args.interpreter_p initialization.
* main.c (captured_main): Set INTERPRETER_P directly by INTERP_CONSOLE.
* main.h (struct captured_main_args): Remove interpreter_p.
* tui/tui-main.c: Remove.
gdb/doc/
Remove the gdbtui binary.
* all-cfg.texi (GDBTUI): Remove.
* gdb.texinfo (Mode Options): Remove the GDBTUI reference.
(TUI): Remove GDBTUI pindex. Remove the GDBTUI reference.
* gdbint.texinfo (Testsuite): Replace `gdbtui' by `gdb -tui'.
----------------------------
revision 1.1
date: 2011/03/29 18:21:32; author: vapier; state: Exp;
gdb: start a gitignore
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
=============================================================================
RCS file: /cvs/src/src/gdb/CONTRIBUTE,v
Working file: CONTRIBUTE
head: 1.13
branch:
locks: strict
access list:
symbolic names:
gdb_7_6-2013-04-26-release: 1.13
gdb_7_6-branch: 1.13.0.4
gdb_7_6-2013-03-12-branchpoint: 1.13
gdb_7_5_1-2012-11-29-release: 1.13
gdb_7_5-2012-08-17-release: 1.13
gdb_7_5-branch: 1.13.0.2
gdb_7_5-2012-07-18-branchpoint: 1.13
gdb_7_4_1-2012-04-26-release: 1.12
gdb_7_4-2012-01-24-release: 1.12
gdb_7_4-branch: 1.12.0.10
gdb_7_4-2011-12-13-branchpoint: 1.12
gdb_7_3_1-2011-09-04-release: 1.12
gdb_7_3-2011-07-26-release: 1.12
gdb_7_3-branch: 1.12.0.8
gdb_7_3-2011-04-01-branchpoint: 1.12
gdb_7_2-2010-09-02-release: 1.12
gdb_7_2-branch: 1.12.0.6
gdb_7_2-2010-07-07-branchpoint: 1.12
gdb_7_1-2010-03-18-release: 1.12
gdb_7_1-branch: 1.12.0.4
gdb_7_1-2010-02-18-branchpoint: 1.12
gdb_7_0_1-2009-12-22-release: 1.12
gdb_7_0-2009-10-06-release: 1.12
gdb_7_0-branch: 1.12.0.2
gdb_7_0-2009-09-16-branchpoint: 1.12
arc-sim-20090309: 1.9
msnyder-checkpoint-072509-branch: 1.11.0.2
msnyder-checkpoint-072509-branchpoint: 1.11
arc-insight_6_8-branch: 1.9.0.16
arc-insight_6_8-branchpoint: 1.9
insight_6_8-branch: 1.9.0.14
insight_6_8-branchpoint: 1.9
reverse-20081226-branch: 1.10.0.4
reverse-20081226-branchpoint: 1.10
multiprocess-20081120-branch: 1.10.0.2
multiprocess-20081120-branchpoint: 1.10
reverse-20080930-branch: 1.9.0.12
reverse-20080930-branchpoint: 1.9
reverse-20080717-branch: 1.9.0.10
reverse-20080717-branchpoint: 1.9
msnyder-reverse-20080609-branch: 1.9.0.8
msnyder-reverse-20080609-branchpoint: 1.9
drow-reverse-20070409-branch: 1.9.0.6
drow-reverse-20070409-branchpoint: 1.9
gdb_6_8-2008-03-27-release: 1.9
gdb_6_8-branch: 1.9.0.4
gdb_6_8-2008-02-26-branchpoint: 1.9
gdb_6_7_1-2007-10-29-release: 1.9
gdb_6_7-2007-10-10-release: 1.9
gdb_6_7-branch: 1.9.0.2
gdb_6_7-2007-09-07-branchpoint: 1.9
insight_6_6-20070208-release: 1.8
gdb_6_6-2006-12-18-release: 1.8
gdb_6_6-branch: 1.8.0.106
gdb_6_6-2006-11-15-branchpoint: 1.8
insight_6_5-20061003-release: 1.8
gdb-csl-symbian-6_4_50_20060226-12: 1.8
gdb-csl-sourcerygxx-3_4_4-25: 1.8
nickrob-async-20060828-mergepoint: 1.8
gdb-csl-symbian-6_4_50_20060226-11: 1.8
gdb-csl-sourcerygxx-4_1-17: 1.8
gdb-csl-20060226-branch-local-2: 1.8
gdb-csl-sourcerygxx-4_1-14: 1.8
gdb-csl-sourcerygxx-4_1-13: 1.8
gdb-csl-sourcerygxx-4_1-12: 1.8
gdb-csl-sourcerygxx-3_4_4-21: 1.8
gdb_6_5-20060621-release: 1.8
gdb-csl-sourcerygxx-4_1-9: 1.8
gdb-csl-sourcerygxx-4_1-8: 1.8
gdb-csl-sourcerygxx-4_1-7: 1.8
gdb-csl-arm-2006q1-6: 1.8
gdb-csl-sourcerygxx-4_1-6: 1.8
gdb-csl-symbian-6_4_50_20060226-10: 1.8
gdb-csl-symbian-6_4_50_20060226-9: 1.8
gdb-csl-symbian-6_4_50_20060226-8: 1.8
gdb-csl-coldfire-4_1-11: 1.8
gdb-csl-sourcerygxx-3_4_4-19: 1.8
gdb-csl-coldfire-4_1-10: 1.8
gdb_6_5-branch: 1.8.0.104
gdb_6_5-2006-05-14-branchpoint: 1.8
gdb-csl-sourcerygxx-4_1-5: 1.8
nickrob-async-20060513-branch: 1.8.0.102
nickrob-async-20060513-branchpoint: 1.8
gdb-csl-sourcerygxx-4_1-4: 1.8
msnyder-reverse-20060502-branch: 1.8.0.100
msnyder-reverse-20060502-branchpoint: 1.8
gdb-csl-morpho-4_1-4: 1.8
gdb-csl-sourcerygxx-3_4_4-17: 1.8
readline_5_1-import-branch: 1.8.0.98
readline_5_1-import-branchpoint: 1.8
gdb-csl-20060226-branch-merge-to-csl-symbian-1: 1.8
gdb-csl-symbian-20060226-branch: 1.8.0.96
gdb-csl-symbian-20060226-branchpoint: 1.8
gdb-csl-20060226-branch-merge-to-csl-local-1: 1.8
msnyder-reverse-20060331-branch: 1.8.0.94
msnyder-reverse-20060331-branchpoint: 1.8
gdb-csl-available-20060303-branch: 1.8.0.92
gdb-csl-available-20060303-branchpoint: 1.8
gdb-csl-20060226-branch: 1.8.0.90
gdb-csl-20060226-branchpoint: 1.8
gdb_6_4-20051202-release: 1.8
msnyder-fork-checkpoint-branch: 1.8.0.88
msnyder-fork-checkpoint-branchpoint: 1.8
gdb-csl-gxxpro-6_3-branch: 1.8.0.86
gdb-csl-gxxpro-6_3-branchpoint: 1.8
gdb_6_4-branch: 1.8.0.84
gdb_6_4-2005-11-01-branchpoint: 1.8
gdb-csl-arm-20051020-branch: 1.8.0.82
gdb-csl-arm-20051020-branchpoint: 1.8
msnyder-tracepoint-checkpoint-branch: 1.8.0.80
msnyder-tracepoint-checkpoint-branchpoint: 1.8
gdb-csl-arm-20050325-2005-q1b: 1.8
gdb-csl-arm-20050325-2005-q1a: 1.8
csl-arm-20050325-branch: 1.8.0.78
csl-arm-20050325-branchpoint: 1.8
gdb-post-i18n-errorwarning-20050211: 1.8
gdb-pre-i18n-errorwarning-20050211: 1.8
gdb_6_3-20041109-release: 1.8
gdb_6_3-branch: 1.8.0.74
gdb_6_3-20041019-branchpoint: 1.8
drow_intercu-merge-20040921: 1.8
drow_intercu-merge-20040915: 1.8
jimb-gdb_6_2-e500-branch: 1.8.0.76
jimb-gdb_6_2-e500-branchpoint: 1.8
gdb_6_2-20040730-release: 1.8
gdb_6_2-branch: 1.8.0.72
gdb_6_2-2004-07-10-gmt-branchpoint: 1.8
gdb_6_1_1-20040616-release: 1.8
gdb_6_1-2004-04-05-release: 1.8
drow_intercu-merge-20040402: 1.8
drow_intercu-merge-20040327: 1.8
ezannoni_pie-20040323-branch: 1.8.0.70
ezannoni_pie-20040323-branchpoint: 1.8
cagney_tramp-20040321-mergepoint: 1.8
cagney_tramp-20040309-branch: 1.8.0.68
cagney_tramp-20040309-branchpoint: 1.8
gdb_6_1-branch: 1.8.0.66
gdb_6_1-2004-03-01-gmt-branchpoint: 1.8
drow_intercu-20040221-branch: 1.8.0.64
drow_intercu-20040221-branchpoint: 1.8
cagney_bfdfile-20040213-branch: 1.8.0.62
cagney_bfdfile-20040213-branchpoint: 1.8
drow-cplus-merge-20040208: 1.8
carlton_dictionary-20040126-merge: 1.8
cagney_bigcore-20040122-branch: 1.8.0.60
cagney_bigcore-20040122-branchpoint: 1.8
drow-cplus-merge-20040113: 1.8
drow-cplus-merge-20031224: 1.8
drow-cplus-merge-20031220: 1.8
carlton_dictionary-20031215-merge: 1.8
drow-cplus-merge-20031214: 1.8
carlton-dictionary-20031111-merge: 1.8
gdb_6_0-2003-10-04-release: 1.8
kettenis_sparc-20030918-branch: 1.8.0.58
kettenis_sparc-20030918-branchpoint: 1.8
carlton_dictionary-20030917-merge: 1.8
ezannoni_pie-20030916-branchpoint: 1.8
ezannoni_pie-20030916-branch: 1.8.0.56
cagney_x86i386-20030821-branch: 1.8.0.54
cagney_x86i386-20030821-branchpoint: 1.8
carlton_dictionary-20030805-merge: 1.8
carlton_dictionary-20030627-merge: 1.8
gdb_6_0-branch: 1.8.0.52
gdb_6_0-2003-06-23-branchpoint: 1.8
jimb-ppc64-linux-20030613-branch: 1.8.0.50
jimb-ppc64-linux-20030613-branchpoint: 1.8
cagney_convert-20030606-branch: 1.8.0.48
cagney_convert-20030606-branchpoint: 1.8
cagney_writestrings-20030508-branch: 1.8.0.46
cagney_writestrings-20030508-branchpoint: 1.8
jimb-ppc64-linux-20030528-branch: 1.8.0.44
jimb-ppc64-linux-20030528-branchpoint: 1.8
carlton_dictionary-20030523-merge: 1.8
cagney_fileio-20030521-branch: 1.8.0.42
cagney_fileio-20030521-branchpoint: 1.8
kettenis_i386newframe-20030517-mergepoint: 1.8
jimb-ppc64-linux-20030509-branch: 1.8.0.40
jimb-ppc64-linux-20030509-branchpoint: 1.8
kettenis_i386newframe-20030504-mergepoint: 1.8
carlton_dictionary-20030430-merge: 1.8
kettenis_i386newframe-20030419-branch: 1.8.0.38
kettenis_i386newframe-20030419-branchpoint: 1.8
carlton_dictionary-20030416-merge: 1.8
cagney_frameaddr-20030409-mergepoint: 1.8
kettenis_i386newframe-20030406-branch: 1.8.0.36
kettenis_i386newframe-20030406-branchpoint: 1.8
cagney_frameaddr-20030403-branchpoint: 1.8
cagney_frameaddr-20030403-branch: 1.8.0.34
cagney_framebase-20030330-mergepoint: 1.8
cagney_framebase-20030326-branch: 1.8.0.32
cagney_framebase-20030326-branchpoint: 1.8
cagney_lazyid-20030317-branch: 1.8.0.30
cagney_lazyid-20030317-branchpoint: 1.8
kettenis-i386newframe-20030316-mergepoint: 1.8
offbyone-20030313-branch: 1.8.0.28
offbyone-20030313-branchpoint: 1.8
kettenis-i386newframe-20030308-branch: 1.8.0.26
kettenis-i386newframe-20030308-branchpoint: 1.8
carlton_dictionary-20030305-merge: 1.8
cagney_offbyone-20030303-branch: 1.8.0.24
cagney_offbyone-20030303-branchpoint: 1.8
carlton_dictionary-20030207-merge: 1.8
interps-20030203-mergepoint: 1.8
interps-20030202-branch: 1.8.0.22
interps-20030202-branchpoint: 1.8
cagney-unwind-20030108-branch: 1.8.0.20
cagney-unwind-20030108-branchpoint: 1.8
carlton_dictionary-20021223-merge: 1.8
gdb_5_3-2002-12-12-release: 1.8
carlton_dictionary-20021115-merge: 1.8
kseitz_interps-20021105-merge: 1.8
kseitz_interps-20021103-merge: 1.8
drow-cplus-merge-20021020: 1.8
drow-cplus-merge-20021025: 1.8
carlton_dictionary-20021025-merge: 1.8
carlton_dictionary-20021011-merge: 1.8
drow-cplus-branch: 1.8.0.18
drow-cplus-branchpoint: 1.8
kseitz_interps-20020930-merge: 1.8
carlton_dictionary-20020927-merge: 1.8
carlton_dictionary-branch: 1.8.0.16
carlton_dictionary-20020920-branchpoint: 1.8
gdb_5_3-branch: 1.8.0.14
gdb_5_3-2002-09-04-branchpoint: 1.8
kseitz_interps-20020829-merge: 1.8
cagney_sysregs-20020825-branch: 1.8.0.12
cagney_sysregs-20020825-branchpoint: 1.8
readline_4_3-import-branch: 1.8.0.10
readline_4_3-import-branchpoint: 1.8
gdb_5_2_1-2002-07-23-release: 1.8
kseitz_interps-20020528-branch: 1.8.0.8
kseitz_interps-20020528-branchpoint: 1.8
cagney_regbuf-20020515-branch: 1.8.0.6
cagney_regbuf-20020515-branchpoint: 1.8
jimb-macro-020506-branch: 1.8.0.4
jimb-macro-020506-branchpoint: 1.8
gdb_5_2-2002-04-29-release: 1.8
gdb_5_2-branch: 1.8.0.2
gdb_5_2-2002-03-03-branchpoint: 1.8
gdb_5_1_1-2002-01-24-release: 1.5.4.1
gdb_5_1_0_1-2002-01-03-release: 1.5.4.1
cygnus_cvs_20020108_pre: 1.6
gdb_5_1_0_1-2002-01-03-branchpoint: 1.5.4.1
gdb_5_1_0_1-2002-01-03-branch: 1.5.4.1.0.4
gdb_5_1-2001-11-21-release: 1.5.4.1
gdb_s390-2001-09-26-branch: 1.5.4.1.0.2
gdb_s390-2001-09-26-branchpoint: 1.5.4.1
gdb_5_1-2001-07-29-branch: 1.5.0.4
gdb_5_1-2001-07-29-branchpoint: 1.5
dberlin-typesystem-branch: 1.5.0.2
dberlin-typesystem-branchpoint: 1.5
gdb-post-ptid_t-2001-05-03: 1.5
gdb-pre-ptid_t-2001-05-03: 1.5
insight-precleanup-2001-01-01: 1.2
gdb-post-protoization-2000-07-29: 1.2
gdb-pre-protoization-2000-07-29: 1.2
gdb-premipsmulti-2000-06-06-branch: 1.2.0.4
gdb-premipsmulti-2000-06-06-branchpoint: 1.2
gdb-post-params-removal-2000-06-04: 1.2
gdb-pre-params-removal-2000-06-04: 1.2
gdb-post-params-removal-2000-05-28: 1.2
gdb-pre-params-removal-2000-05-28: 1.2
gdb_5_0-2000-05-19-release: 1.2
gdb_4_18_2-2000-05-18-release: 1.2
gdb_4_95_1-2000-05-11-snapshot: 1.2
gdb_4_95_0-2000-04-27-snapshot: 1.2
gdb_5_0-2000-04-10-branch: 1.2.0.2
gdb_5_0-2000-04-10-branchpoint: 1.2
keyword substitution: kv
total revisions: 14; selected revisions: 14
description:
----------------------------
revision 1.13
date: 2012/04/25 07:08:07; author: sivachandra; state: Exp; lines: +3 -3
2012-04-25 Siva Chandra Reddy <sivachandra@google.com>
* CONTRIBUTE: Use unified diff instead of context diff when
generating patches.
----------------------------
revision 1.12
date: 2009/08/22 17:08:09; author: rwild; state: Exp; lines: +1 -1
Cleanups after the update to Autoconf 2.64, Automake 1.11.
/:
* README-maintainer-mode: Point directly to upstream locations
for autoconf, automake, libtool, gettext, instead of copies on
sources.redhat.com. Document required versions.
* configure.ac: Do not substitute datarootdir, htmldir,
pdfdir, docdir. Do not process --with-datarootdir,
--with-htmldir, --with-pdfdir, --with-docdir.
* configure: Regenerate.
gdb/:
* CONTRIBUTE: Bump documented Autoconf version.
* configure.ac: Do not substitute datarootdir, htmldir,
pdfdir, docdir. Do not process --with-datarootdir,
--with-htmldir, --with-pdfdir, --with-docdir.
* configure: Regenerate.
gdb/doc/:
* gdbint.texinfo (Releasing GDB): Point to
README-maintainer-mode file for required autoconf version.
* configure.ac: Do not substitute datarootdir, htmldir,
pdfdir, docdir. Do not process --with-datarootdir,
--with-htmldir, --with-pdfdir, --with-docdir.
* configure: Regenerate.
gprof/:
* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(install-pdf-recursive, html__strip_dir, install-html)
(install-html-am, install-html-recursive): Remove.
* Makefile.in: Regenerate.
opcodes/:
* Makefile.am (install-pdf, install-html): Remove.
* Makefile.in: Regenerate.
gas/:
* Makefile.am (install-pdf, install-pdf-recursive, install-html)
(install-html-recursive): Remove.
* Makefile.in: Regenerate.
* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(html__strip_dir, install-html, install-html-am): Remove.
* doc/Makefile.in: Regenerate.
ld/:
* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(install-pdf-recursive, html__strip_dir, install-html)
(install-html-am, install-html-recursive): Remove.
* Makefile.in: Regenerate.
binutils/:
* Makefile.am (install-pdf, install-pdf-recursive, install-html)
(install-html-recursive): Remove.
* Makefile.in: Regenerate.
* doc/Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(html__strip_dir, install-html, install-html-am): Remove.
* doc/Makefile.in: Regenerate.
bfd/:
* Makefile.am (datarootdir, docdir, htmldor, pdfdir)
(install-pdf, install-pdf-recursive, install-html)
(install-html-recursive): Remove.
* Makefile.in: Regenerate.
bfd/doc/:
* Makefile.am (pdf__strip_dir, install-pdf, install-pdf-am)
(html__strip_dir, install-html, install-html-am): Remove.
* Makefile.in: Regenerate.
----------------------------
revision 1.11
date: 2009/01/09 04:46:22; author: brobecke; state: Exp; lines: +2 -1
* CONTRIBUTE: Minor reformatting.
----------------------------
revision 1.10
date: 2008/10/27 17:41:57; author: palves; state: Exp; lines: +3 -3
* CONTRIBUTE: Mention autoconf 2.59 and configure.ac instead of
2.13 and configure.in.
----------------------------
revision 1.9
date: 2007/01/04 20:28:38; author: drow; state: Exp; lines: +1 -1
* CONTRIBUTE: Use sourceware.org.
----------------------------
revision 1.8
date: 2002/02/23 20:36:48; author: cagney; state: Exp; lines: +1 -1
From 2002-02-19 Paul Eggert <eggert@twinsun.com>:
* Makefile.in (VER): Change "head -1" to "sed q", since POSIX
1003.1-2001 no longer allows "head -1".
* gdb/Makefile.in (version.c): Likewise.
* gdb/doc/Makefile.in (GDBvn.texi): Likewise.
* gdb/CONTRIBUTE: Change "diff -c3" to "diff -c", which is
equivalent. POSIX 1003.1-2001 no longer allows "diff -c3".
----------------------------
revision 1.7
date: 2002/01/13 16:16:58; author: cagney; state: Exp; lines: +1 -1
From 2002-01-09 John Marshall <johnm@falch.net>:
* CONTRIBUTE, README, TODO: Change sourceware.cygnus.com to
sources.redhat.com, and tweak some related URLs which had
suffered from linkrot.
----------------------------
revision 1.6
date: 2001/09/26 20:52:56; author: cagney; state: Exp; lines: +19 -49
* CONTRIBUTE: Update.
----------------------------
revision 1.5
date: 2001/03/03 03:23:50; author: cagney; state: Exp; lines: +6 -2
branches: 1.5.4;
Change convention to ``Fix PR gdb/NNNN''
----------------------------
revision 1.4
date: 2001/02/23 22:20:38; author: cagney; state: Exp; lines: +9 -0
Mention how to cite GDB problem reports.
----------------------------
revision 1.3
date: 2001/02/23 22:09:30; author: cagney; state: Exp; lines: +7 -0
Mention gdbarch.sh and to not submit gdbarch.[ch].
----------------------------
revision 1.2
date: 2000/03/01 08:33:47; author: cagney; state: Exp; lines: +7 -0
Note that there is no need to send configure.in patches.
----------------------------
revision 1.1
date: 2000/02/13 00:22:01; author: cagney; state: Exp;
Explain how to contribute to GDB.
----------------------------
revision 1.5.4.1
date: 2001/09/26 20:53:27; author: cagney; state: Exp; lines: +19 -49
* CONTRIBUTE: Update.
=============================================================================
RCS file: /cvs/src/src/gdb/COPYING,v
Working file: COPYING
head: 1.3
branch:
locks: strict
access list:
symbolic names:
gdb_7_6-2013-04-26-release: 1.3
gdb_7_6-branch: 1.3.0.12
gdb_7_6-2013-03-12-branchpoint: 1.3
gdb_7_5_1-2012-11-29-release: 1.3
gdb_7_5-2012-08-17-release: 1.3
gdb_7_5-branch: 1.3.0.10
gdb_7_5-2012-07-18-branchpoint: 1.3
gdb_7_4_1-2012-04-26-release: 1.3
gdb_7_4-2012-01-24-release: 1.3
gdb_7_4-branch: 1.3.0.8
gdb_7_4-2011-12-13-branchpoint: 1.3
gdb_7_3_1-2011-09-04-release: 1.3
gdb_7_3-2011-07-26-release: 1.3
gdb_7_3-branch: 1.3.0.6
gdb_7_3-2011-04-01-branchpoint: 1.3
gdb_7_2-2010-09-02-release: 1.3
gdb_7_2-branch: 1.3.0.4
gdb_7_2-2010-07-07-branchpoint: 1.3
gdb_7_1-2010-03-18-release: 1.3
gdb_7_1-branch: 1.3.0.2
gdb_7_1-2010-02-18-branchpoint: 1.3
gdb_7_0_1-2009-12-22-release: 1.2.42.1
gdb_7_0-2009-10-06-release: 1.2
gdb_7_0-branch: 1.2.0.42
gdb_7_0-2009-09-16-branchpoint: 1.2
arc-sim-20090309: 1.2
msnyder-checkpoint-072509-branch: 1.2.0.40
msnyder-checkpoint-072509-branchpoint: 1.2
arc-insight_6_8-branch: 1.2.0.38
arc-insight_6_8-branchpoint: 1.2
insight_6_8-branch: 1.2.0.36
insight_6_8-branchpoint: 1.2
reverse-20081226-branch: 1.2.0.34
reverse-20081226-branchpoint: 1.2
multiprocess-20081120-branch: 1.2.0.32
multiprocess-20081120-branchpoint: 1.2
reverse-20080930-branch: 1.2.0.30
reverse-20080930-branchpoint: 1.2
reverse-20080717-branch: 1.2.0.28
reverse-20080717-branchpoint: 1.2
msnyder-reverse-20080609-branch: 1.2.0.26
msnyder-reverse-20080609-branchpoint: 1.2
drow-reverse-20070409-branch: 1.2.0.24
drow-reverse-20070409-branchpoint: 1.2
gdb_6_8-2008-03-27-release: 1.2
gdb_6_8-branch: 1.2.0.22
gdb_6_8-2008-02-26-branchpoint: 1.2
gdb_6_7_1-2007-10-29-release: 1.2
gdb_6_7-2007-10-10-release: 1.2
gdb_6_7-branch: 1.2.0.20
gdb_6_7-2007-09-07-branchpoint: 1.2
insight_6_6-20070208-release: 1.2
gdb_6_6-2006-12-18-release: 1.2
gdb_6_6-branch: 1.2.0.18
gdb_6_6-2006-11-15-branchpoint: 1.2
insight_6_5-20061003-release: 1.2
gdb-csl-symbian-6_4_50_20060226-12: 1.2
gdb-csl-sourcerygxx-3_4_4-25: 1.1.1.1
nickrob-async-20060828-mergepoint: 1.2
gdb-csl-symbian-6_4_50_20060226-11: 1.2
gdb-csl-sourcerygxx-4_1-17: 1.2
gdb-csl-20060226-branch-local-2: 1.2
gdb-csl-sourcerygxx-4_1-14: 1.2
gdb-csl-sourcerygxx-4_1-13: 1.2
gdb-csl-sourcerygxx-4_1-12: 1.2
gdb-csl-sourcerygxx-3_4_4-21: 1.2
gdb_6_5-20060621-release: 1.2
gdb-csl-sourcerygxx-4_1-9: 1.2
gdb-csl-sourcerygxx-4_1-8: 1.2
gdb-csl-sourcerygxx-4_1-7: 1.2
gdb-csl-arm-2006q1-6: 1.2
gdb-csl-sourcerygxx-4_1-6: 1.2
gdb-csl-symbian-6_4_50_20060226-10: 1.2
gdb-csl-symbian-6_4_50_20060226-9: 1.2
gdb-csl-symbian-6_4_50_20060226-8: 1.2
gdb-csl-coldfire-4_1-11: 1.2
gdb-csl-sourcerygxx-3_4_4-19: 1.2
gdb-csl-coldfire-4_1-10: 1.2
gdb_6_5-branch: 1.2.0.16
gdb_6_5-2006-05-14-branchpoint: 1.2
gdb-csl-sourcerygxx-4_1-5: 1.2
nickrob-async-20060513-branch: 1.2.0.14
nickrob-async-20060513-branchpoint: 1.2
gdb-csl-sourcerygxx-4_1-4: 1.2
msnyder-reverse-20060502-branch: 1.2.0.12
msnyder-reverse-20060502-branchpoint: 1.2
gdb-csl-morpho-4_1-4: 1.2
gdb-csl-sourcerygxx-3_4_4-17: 1.2
readline_5_1-import-branch: 1.2.0.10
readline_5_1-import-branchpoint: 1.2
gdb-csl-20060226-branch-merge-to-csl-symbian-1: 1.2
gdb-csl-symbian-20060226-branch: 1.2.0.8
gdb-csl-symbian-20060226-branchpoint: 1.2
gdb-csl-20060226-branch-merge-to-csl-local-1: 1.2
msnyder-reverse-20060331-branch: 1.2.0.6
msnyder-reverse-20060331-branchpoint: 1.2
gdb-csl-available-20060303-branch: 1.2.0.4
gdb-csl-available-20060303-branchpoint: 1.2
gdb-csl-20060226-branch: 1.2.0.2
gdb-csl-20060226-branchpoint: 1.2
gdb_6_4-20051202-release: 1.1.1.1
msnyder-fork-checkpoint-branch: 1.1.1.1.0.102
msnyder-fork-checkpoint-branchpoint: 1.1.1.1
gdb-csl-gxxpro-6_3-branch: 1.1.1.1.0.100
gdb-csl-gxxpro-6_3-branchpoint: 1.1.1.1
gdb_6_4-branch: 1.1.1.1.0.98
gdb_6_4-2005-11-01-branchpoint: 1.1.1.1
gdb-csl-arm-20051020-branch: 1.1.1.1.0.96
gdb-csl-arm-20051020-branchpoint: 1.1.1.1
msnyder-tracepoint-checkpoint-branch: 1.1.1.1.0.94
msnyder-tracepoint-checkpoint-branchpoint: 1.1.1.1
gdb-csl-arm-20050325-2005-q1b: 1.1.1.1
gdb-csl-arm-20050325-2005-q1a: 1.1.1.1
csl-arm-20050325-branch: 1.1.1.1.0.92
csl-arm-20050325-branchpoint: 1.1.1.1
gdb-post-i18n-errorwarning-20050211: 1.1.1.1
gdb-pre-i18n-errorwarning-20050211: 1.1.1.1
gdb_6_3-20041109-release: 1.1.1.1
gdb_6_3-branch: 1.1.1.1.0.88
gdb_6_3-20041019-branchpoint: 1.1.1.1
drow_intercu-merge-20040921: 1.1.1.1
drow_intercu-merge-20040915: 1.1.1.1
jimb-gdb_6_2-e500-branch: 1.1.1.1.0.90
jimb-gdb_6_2-e500-branchpoint: 1.1.1.1
gdb_6_2-20040730-release: 1.1.1.1
gdb_6_2-branch: 1.1.1.1.0.86
gdb_6_2-2004-07-10-gmt-branchpoint: 1.1.1.1
gdb_6_1_1-20040616-release: 1.1.1.1
gdb_6_1-2004-04-05-release: 1.1.1.1
drow_intercu-merge-20040402: 1.1.1.1
drow_intercu-merge-20040327: 1.1.1.1
ezannoni_pie-20040323-branch: 1.1.1.1.0.84
ezannoni_pie-20040323-branchpoint: 1.1.1.1
cagney_tramp-20040321-mergepoint: 1.1.1.1
cagney_tramp-20040309-branch: 1.1.1.1.0.82
cagney_tramp-20040309-branchpoint: 1.1.1.1
gdb_6_1-branch: 1.1.1.1.0.80
gdb_6_1-2004-03-01-gmt-branchpoint: 1.1.1.1
drow_intercu-20040221-branch: 1.1.1.1.0.78
drow_intercu-20040221-branchpoint: 1.1.1.1
cagney_bfdfile-20040213-branch: 1.1.1.1.0.76
cagney_bfdfile-20040213-branchpoint: 1.1.1.1
drow-cplus-merge-20040208: 1.1.1.1
carlton_dictionary-20040126-merge: 1.1.1.1
cagney_bigcore-20040122-branch: 1.1.1.1.0.74
cagney_bigcore-20040122-branchpoint: 1.1.1.1
drow-cplus-merge-20040113: 1.1.1.1
drow-cplus-merge-20031224: 1.1.1.1
drow-cplus-merge-20031220: 1.1.1.1
carlton_dictionary-20031215-merge: 1.1.1.1
drow-cplus-merge-20031214: 1.1.1.1
carlton-dictionary-20031111-merge: 1.1.1.1
gdb_6_0-2003-10-04-release: 1.1.1.1
kettenis_sparc-20030918-branch: 1.1.1.1.0.72
kettenis_sparc-20030918-branchpoint: 1.1.1.1
carlton_dictionary-20030917-merge: 1.1.1.1
ezannoni_pie-20030916-branchpoint: 1.1.1.1
ezannoni_pie-20030916-branch: 1.1.1.1.0.70
cagney_x86i386-20030821-branch: 1.1.1.1.0.68
cagney_x86i386-20030821-branchpoint: 1.1.1.1
carlton_dictionary-20030805-merge: 1.1.1.1
carlton_dictionary-20030627-merge: 1.1.1.1
gdb_6_0-branch: 1.1.1.1.0.66
gdb_6_0-2003-06-23-branchpoint: 1.1.1.1
jimb-ppc64-linux-20030613-branch: 1.1.1.1.0.64
jimb-ppc64-linux-20030613-branchpoint: 1.1.1.1
cagney_convert-20030606-branch: 1.1.1.1.0.62
cagney_convert-20030606-branchpoint: 1.1.1.1
cagney_writestrings-20030508-branch: 1.1.1.1.0.60
cagney_writestrings-20030508-branchpoint: 1.1.1.1
jimb-ppc64-linux-20030528-branch: 1.1.1.1.0.58
jimb-ppc64-linux-20030528-branchpoint: 1.1.1.1
carlton_dictionary-20030523-merge: 1.1.1.1
cagney_fileio-20030521-branch: 1.1.1.1.0.56
cagney_fileio-20030521-branchpoint: 1.1.1.1
kettenis_i386newframe-20030517-mergepoint: 1.1.1.1
jimb-ppc64-linux-20030509-branch: 1.1.1.1.0.54
jimb-ppc64-linux-20030509-branchpoint: 1.1.1.1
kettenis_i386newframe-20030504-mergepoint: 1.1.1.1
carlton_dictionary-20030430-merge: 1.1.1.1
kettenis_i386newframe-20030419-branch: 1.1.1.1.0.52
kettenis_i386newframe-20030419-branchpoint: 1.1.1.1
carlton_dictionary-20030416-merge: 1.1.1.1
cagney_frameaddr-20030409-mergepoint: 1.1.1.1
kettenis_i386newframe-20030406-branch: 1.1.1.1.0.50
kettenis_i386newframe-20030406-branchpoint: 1.1.1.1
cagney_frameaddr-20030403-branchpoint: 1.1.1.1
cagney_frameaddr-20030403-branch: 1.1.1.1.0.48
cagney_framebase-20030330-mergepoint: 1.1.1.1
cagney_framebase-20030326-branch: 1.1.1.1.0.46
cagney_framebase-20030326-branchpoint: 1.1.1.1
cagney_lazyid-20030317-branch: 1.1.1.1.0.44
cagney_lazyid-20030317-branchpoint: 1.1.1.1
kettenis-i386newframe-20030316-mergepoint: 1.1.1.1
offbyone-20030313-branch: 1.1.1.1.0.42
offbyone-20030313-branchpoint: 1.1.1.1
kettenis-i386newframe-20030308-branch: 1.1.1.1.0.40
kettenis-i386newframe-20030308-branchpoint: 1.1.1.1
carlton_dictionary-20030305-merge: 1.1.1.1
cagney_offbyone-20030303-branch: 1.1.1.1.0.38
cagney_offbyone-20030303-branchpoint: 1.1.1.1
carlton_dictionary-20030207-merge: 1.1.1.1
interps-20030203-mergepoint: 1.1.1.1
interps-20030202-branch: 1.1.1.1.0.36
interps-20030202-branchpoint: 1.1.1.1
cagney-unwind-20030108-branch: 1.1.1.1.0.34
cagney-unwind-20030108-branchpoint: 1.1.1.1
carlton_dictionary-20021223-merge: 1.1.1.1
gdb_5_3-2002-12-12-release: 1.1.1.1
carlton_dictionary-20021115-merge: 1.1.1.1
kseitz_interps-20021105-merge: 1.1.1.1
kseitz_interps-20021103-merge: 1.1.1.1
drow-cplus-merge-20021020: 1.1.1.1
drow-cplus-merge-20021025: 1.1.1.1
carlton_dictionary-20021025-merge: 1.1.1.1
carlton_dictionary-20021011-merge: 1.1.1.1
drow-cplus-branch: 1.1.1.1.0.32
drow-cplus-branchpoint: 1.1.1.1
kseitz_interps-20020930-merge: 1.1.1.1
carlton_dictionary-20020927-merge: 1.1.1.1
carlton_dictionary-branch: 1.1.1.1.0.30
carlton_dictionary-20020920-branchpoint: 1.1.1.1
gdb_5_3-branch: 1.1.1.1.0.28
gdb_5_3-2002-09-04-branchpoint: 1.1.1.1
kseitz_interps-20020829-merge: 1.1.1.1
cagney_sysregs-20020825-branch: 1.1.1.1.0.26
cagney_sysregs-20020825-branchpoint: 1.1.1.1
readline_4_3-import-branch: 1.1.1.1.0.24
readline_4_3-import-branchpoint: 1.1.1.1
gdb_5_2_1-2002-07-23-release: 1.1.1.1
kseitz_interps-20020528-branch: 1.1.1.1.0.22
kseitz_interps-20020528-branchpoint: 1.1.1.1
cagney_regbuf-20020515-branch: 1.1.1.1.0.20
cagney_regbuf-20020515-branchpoint: 1.1.1.1
jimb-macro-020506-branch: 1.1.1.1.0.18
jimb-macro-020506-branchpoint: 1.1.1.1
gdb_5_2-2002-04-29-release: 1.1.1.1
gdb_5_2-branch: 1.1.1.1.0.16
gdb_5_2-2002-03-03-branchpoint: 1.1.1.1
gdb_5_1_1-2002-01-24-release: 1.1.1.1
gdb_5_1_0_1-2002-01-03-release: 1.1.1.1
cygnus_cvs_20020108_pre: 1.1.1.1
gdb_5_1_0_1-2002-01-03-branchpoint: 1.1.1.1
gdb_5_1_0_1-2002-01-03-branch: 1.1.1.1.0.14
gdb_5_1-2001-11-21-release: 1.1.1.1
gdb_s390-2001-09-26-branch: 1.1.1.1.0.12
gdb_s390-2001-09-26-branchpoint: 1.1.1.1
gdb_5_1-2001-07-29-branch: 1.1.1.1.0.10
gdb_5_1-2001-07-29-branchpoint: 1.1.1.1
dberlin-typesystem-branch: 1.1.1.1.0.8
dberlin-typesystem-branchpoint: 1.1.1.1
gdb-post-ptid_t-2001-05-03: 1.1.1.1
gdb-pre-ptid_t-2001-05-03: 1.1.1.1
insight-precleanup-2001-01-01: 1.1.1.1
gdb-post-protoization-2000-07-29: 1.1.1.1
gdb-pre-protoization-2000-07-29: 1.1.1.1
gdb-premipsmulti-2000-06-06-branch: 1.1.1.1.0.6
gdb-premipsmulti-2000-06-06-branchpoint: 1.1.1.1
gdb-post-params-removal-2000-06-04: 1.1.1.1
gdb-pre-params-removal-2000-06-04: 1.1.1.1
gdb-post-params-removal-2000-05-28: 1.1.1.1
gdb-pre-params-removal-2000-05-28: 1.1.1.1
gdb_5_0-2000-05-19-release: 1.1.1.1
gdb_4_18_2-2000-05-18-release: 1.1.1.1
gdb_4_95_1-2000-05-11-snapshot: 1.1.1.1
gdb_4_95_0-2000-04-27-snapshot: 1.1.1.1
gdb_5_0-2000-04-10-branch: 1.1.1.1.0.4
gdb_5_0-2000-04-10-branchpoint: 1.1.1.1
repo-unification-2000-02-06: 1.1.1.1
insight-2000-02-04: 1.1.1.1
gdb-2000-02-04: 1.1.1.1
gdb-2000-02-02: 1.1.1.1
gdb-2000-02-01: 1.1.1.1
gdb-2000-01-31: 1.1.1.1
gdb-2000-01-26: 1.1.1.1
gdb-2000-01-24: 1.1.1.1
gdb-2000-01-17: 1.1.1.1
gdb-2000-01-10: 1.1.1.1
gdb-2000-01-05: 1.1.1.1
gdb-1999-12-21: 1.1.1.1
gdb-1999-12-13: 1.1.1.1
gdb-1999-12-07: 1.1.1.1
gdb-1999-12-06: 1.1.1.1
gdb-1999-11-16: 1.1.1.1
gdb-1999-11-08: 1.1.1.1
gdb-1999-11-01: 1.1.1.1
gdb-1999-10-25: 1.1.1.1
gdb-1999-10-18: 1.1.1.1
gdb-1999-10-11: 1.1.1.1
gdb-1999-10-04: 1.1.1.1
gdb-1999-09-28: 1.1.1.1
gdb-1999-09-21: 1.1.1.1
gdb-1999-09-13: 1.1.1.1
gdb-1999-09-08: 1.1.1.1
gdb-1999-08-30: 1.1.1.1
gdb-1999-08-23: 1.1.1.1
gdb-1999-08-16: 1.1.1.1
gdb-1999-08-09: 1.1.1.1
gdb-1999-08-02: 1.1.1.1
gdb-1999-07-26: 1.1.1.1
gdb-1999-07-19: 1.1.1.1
gdb-1999-07-12: 1.1.1.1
gdb-post-reformat-19990707: 1.1.1.1
gdb-1999-07-07-post-reformat-snapshot: 1.1.1.1
gdb-pre-reformat-19990707: 1.1.1.1
gdb-1999-07-07: 1.1.1.1
gdb-1999-07-05: 1.1.1.1
gdb-1999-06-28: 1.1.1.1
gdb-1999-06-21: 1.1.1.1
gdb-1999-06-14: 1.1.1.1
gdb-1999-06-07: 1.1.1.1
gdb-1999-06-01: 1.1.1.1
gdb-4_18-branch: 1.1.1.1.0.2
gdb-4_18-release: 1.1.1.1
gdb-1999-05-25: 1.1.1.1
gdb-1999-05-19: 1.1.1.1
gdb-1999-05-10: 1.1.1.1
gdb-19990504: 1.1.1.1
gdb-19990422: 1.1.1.1
SNAPSHOT: 1.1.1
gdb-4_18: 1.1.1.1
GDB_4_18: 1.1.1
keyword substitution: o
total revisions: 5; selected revisions: 5
description:
----------------------------
revision 1.3
date: 2009/12/21 07:40:04; author: brobecke; state: Exp; lines: +624 -292
* COPYING: Update to GPL version 3.
----------------------------
revision 1.2
date: 2005/12/17 22:33:58; author: eliz; state: Exp; lines: +4 -2
branches: 1.2.42;
* breakpoint.c:
* arm-tdep.c:
* ia64-tdep.c:
* i386-tdep.c:
* hpread.c:
* hppa-tdep.c:
* hppa-hpux-tdep.c:
* gnu-nat.c:
* gdbtypes.c:
* gdbarch.h:
* gdbarch.c:
* eval.c:
* dwarf2read.c:
* dbxread.c:
* copying:
* symfile.c:
* stabsread.c:
* sh64-tdep.c:
* sh-tdep.c:
* s390-tdep.c:
* rs6000-tdep.c:
* remote.c:
* remote-mips.c:
* mips-tdep.c:
* mdebugread.c:
* linux-nat.c:
* infrun.c:
* xcoffread.c:
* win32-nat.c:
* valops.c:
* utils.c:
* tracepoint.c:
* target.c:
* symtab.c:
* c-exp.y:
* ada-valprint.c:
* ada-typeprint.c:
* ada-lex.l:
* ada-lang.h:
* ada-lang.c:
* ada-exp.y:
* alphafbsd-tdep.c:
* alphabsd-tdep.h:
* alphabsd-tdep.c:
* alphabsd-nat.c:
* alpha-tdep.h:
* alpha-tdep.c:
* alpha-osf1-tdep.c:
* alpha-nat.c:
* alpha-mdebug-tdep.c:
* alpha-linux-tdep.c:
* alpha-linux-nat.c:
* aix-thread.c:
* abug-rom.c:
* arch-utils.c:
* annotate.h:
* annotate.c:
* amd64obsd-tdep.c:
* amd64obsd-nat.c:
* amd64nbsd-tdep.c:
* amd64nbsd-nat.c:
* amd64fbsd-tdep.c:
* amd64fbsd-nat.c:
* amd64bsd-nat.c:
* amd64-tdep.h:
* amd64-tdep.c:
* amd64-sol2-tdep.c:
* amd64-nat.h:
* amd64-nat.c:
* amd64-linux-tdep.c:
* amd64-linux-nat.c:
* alphanbsd-tdep.c:
* block.h:
* block.c:
* bfd-target.h:
* bfd-target.c:
* bcache.h:
* bcache.c:
* ax.h:
* ax-general.c:
* ax-gdb.h:
* ax-gdb.c:
* avr-tdep.c:
* auxv.h:
* auxv.c:
* armnbsd-tdep.c:
* armnbsd-nat.c:
* arm-tdep.h:
* arm-linux-nat.c:
* arch-utils.h:
* charset.c:
* call-cmds.h:
* c-valprint.c:
* c-typeprint.c:
* c-lang.h:
* c-lang.c:
* buildsym.h:
* buildsym.c:
* bsd-uthread.h:
* bsd-uthread.c:
* bsd-kvm.h:
* bsd-kvm.c:
* breakpoint.h:
* core-regset.c:
* core-aout.c:
* completer.h:
* completer.c:
* complaints.h:
* complaints.c:
* command.h:
* coffread.c:
* coff-solib.h:
* coff-solib.c:
* coff-pe-read.h:
* coff-pe-read.c:
* cli-out.h:
* cli-out.c:
* charset.h:
* dink32-rom.c:
* dictionary.h:
* dictionary.c:
* demangle.c:
* defs.h:
* dcache.h:
* dcache.c:
* d10v-tdep.c:
* cpu32bug-rom.c:
* cp-valprint.c:
* cp-support.h:
* cp-support.c:
* cp-namespace.c:
* cp-abi.h:
* cp-abi.c:
* corelow.c:
* corefile.c:
* environ.c:
* elfread.c:
* dwarfread.c:
* dwarf2loc.c:
* dwarf2expr.h:
* dwarf2expr.c:
* dwarf2-frame.h:
* dwarf2-frame.c:
* dve3900-rom.c:
* dummy-frame.h:
* dummy-frame.c:
* dsrec.c:
* doublest.h:
* doublest.c:
* disasm.h:
* disasm.c:
* fork-child.c:
* findvar.c:
* fbsd-nat.h:
* fbsd-nat.c:
* f-valprint.c:
* f-typeprint.c:
* f-lang.h:
* f-lang.c:
* expression.h:
* expprint.c:
* exec.h:
* exec.c:
* exceptions.h:
* exceptions.c:
* event-top.h:
* event-top.c:
* event-loop.h:
* event-loop.c:
* gdb.c:
* gdb-stabs.h:
* gdb-events.h:
* gdb-events.c:
* gcore.c:
* frv-tdep.h:
* frv-tdep.c:
* frv-linux-tdep.c:
* frame.h:
* frame.c:
* frame-unwind.h:
* frame-unwind.c:
* frame-base.h:
* frame-base.c:
* gdb_vfork.h:
* gdb_thread_db.h:
* gdb_string.h:
* gdb_stat.h:
* gdb_regex.h:
* gdb_ptrace.h:
* gdb_proc_service.h:
* gdb_obstack.h:
* gdb_locale.h:
* gdb_dirent.h:
* gdb_curses.h:
* gdb_assert.h:
* gdbarch.sh:
* gdb.h:
* hpux-thread.c:
* hppabsd-nat.c:
* hppa-tdep.h:
* hpacc-abi.c:
* h8300-tdep.c:
* gregset.h:
* go32-nat.c:
* gnu-v3-abi.c:
* gnu-v2-abi.h:
* gnu-v2-abi.c:
* gnu-nat.h:
* glibc-tdep.c:
* gdbtypes.h:
* gdbcore.h:
* gdbcmd.h:
* i386nbsd-tdep.c:
* i386nbsd-nat.c:
* i386gnu-tdep.c:
* i386gnu-nat.c:
* i386fbsd-tdep.c:
* i386fbsd-nat.c:
* i386bsd-tdep.c:
* i386bsd-nat.h:
* i386bsd-nat.c:
* i386-tdep.h:
* i386-sol2-nat.c:
* i386-nto-tdep.c:
* i386-nat.c:
* i386-linux-tdep.h:
* i386-linux-tdep.c:
* i386-linux-nat.c:
* i386-cygwin-tdep.c:
* inf-ttrace.c:
* inf-ptrace.h:
* inf-ptrace.c:
* inf-loop.h:
* inf-loop.c:
* inf-child.h:
* inf-child.c:
* ia64-tdep.h:
* ia64-linux-nat.c:
* i387-tdep.h:
* i387-tdep.c:
* i386v4-nat.c:
* i386v-nat.c:
* i386obsd-tdep.c:
* i386obsd-nat.c:
* kod.c:
* jv-valprint.c:
* jv-typeprint.c:
* jv-lang.h:
* jv-lang.c:
* irix5-nat.c:
* iq2000-tdep.c:
* interps.h:
* interps.c:
* inftarg.c:
* inflow.h:
* inflow.c:
* inferior.h:
* infcmd.c:
* infcall.h:
* infcall.c:
* inf-ttrace.h:
* m32r-tdep.h:
* m32r-tdep.c:
* m32r-rom.c:
* m32r-linux-tdep.c:
* m32r-linux-nat.c:
* m2-valprint.c:
* m2-typeprint.c:
* m2-lang.h:
* m2-lang.c:
* lynx-nat.c:
* linux-thread-db.c:
* linux-nat.h:
* linespec.c:
* libunwind-frame.h:
* libunwind-frame.c:
* language.h:
* language.c:
* macroexp.c:
* macrocmd.c:
* m88kbsd-nat.c:
* m88k-tdep.h:
* m88k-tdep.c:
* m68klinux-tdep.c:
* m68klinux-nat.c:
* m68kbsd-tdep.c:
* m68kbsd-nat.c:
* m68k-tdep.h:
* m68k-tdep.c:
* mips-linux-nat.c:
* mips-irix-tdep.c:
* minsyms.c:
* memattr.h:
* memattr.c:
* mem-break.c:
* mdebugread.h:
* main.h:
* main.c:
* macrotab.h:
* macrotab.c:
* macroscope.h:
* macroscope.c:
* macroexp.h:
* nbsd-tdep.c:
* mt-tdep.c:
* monitor.h:
* monitor.c:
* mn10300-tdep.h:
* mn10300-tdep.c:
* mn10300-linux-tdep.c:
* mipsv4-nat.c:
* mipsread.c:
* mipsnbsd-tdep.h:
* mipsnbsd-tdep.c:
* mipsnbsd-nat.c:
* mips64obsd-tdep.c:
* mips64obsd-nat.c:
* mips-tdep.h:
* mips-mdebug-tdep.c:
* mips-linux-tdep.c:
* osabi.h:
* osabi.c:
* ocd.h:
* ocd.c:
* observer.c:
* objfiles.h:
* objfiles.c:
* objc-lang.h:
* objc-lang.c:
* objc-exp.y:
* nto-tdep.h:
* nto-tdep.c:
* nto-procfs.c:
* nlmread.c:
* nbsd-tdep.h:
* ppcobsd-tdep.c:
* ppcobsd-nat.c:
* ppcnbsd-tdep.h:
* ppcnbsd-tdep.c:
* ppcnbsd-nat.c:
* ppcbug-rom.c:
* ppc-tdep.h:
* ppc-sysv-tdep.c:
* ppc-linux-tdep.c:
* ppc-linux-nat.c:
* ppc-bdm.c:
* parser-defs.h:
* parse.c:
* p-valprint.c:
* p-typeprint.c:
* p-lang.h:
* p-lang.c:
* remote-fileio.h:
* remote-fileio.c:
* remote-est.c:
* remote-e7000.c:
* regset.h:
* regset.c:
* reggroups.h:
* reggroups.c:
* regcache.h:
* regcache.c:
* proc-why.c:
* proc-service.c:
* proc-events.c:
* printcmd.c:
* ppcobsd-tdep.h:
* sentinel-frame.h:
* sentinel-frame.c:
* scm-valprint.c:
* scm-tags.h:
* scm-lang.h:
* scm-lang.c:
* scm-exp.c:
* s390-tdep.h:
* rom68k-rom.c:
* remote.h:
* remote-utils.c:
* remote-st.c:
* remote-sim.c:
* remote-sds.c:
* remote-rdp.c:
* remote-rdi.c:
* remote-hms.c:
* sim-regno.h:
* shnbsd-tdep.h:
* shnbsd-tdep.c:
* shnbsd-nat.c:
* sh-tdep.h:
* serial.h:
* serial.c:
* ser-unix.h:
* ser-unix.c:
* ser-tcp.c:
* ser-pipe.c:
* ser-go32.c:
* ser-e7kpc.c:
* ser-base.h:
* ser-base.c:
* solib.c:
* solib-svr4.h:
* solib-svr4.c:
* solib-sunos.c:
* solib-som.h:
* solib-som.c:
* solib-pa64.h:
* solib-pa64.c:
* solib-osf.c:
* solib-null.c:
* solib-legacy.c:
* solib-irix.c:
* solib-frv.c:
* solib-aix5.c:
* sol-thread.c:
* sparc64-linux-tdep.c:
* sparc64-linux-nat.c:
* sparc-tdep.h:
* sparc-tdep.c:
* sparc-sol2-tdep.c:
* sparc-sol2-nat.c:
* sparc-nat.h:
* sparc-nat.c:
* sparc-linux-tdep.c:
* sparc-linux-nat.c:
* source.h:
* source.c:
* somread.c:
* solist.h:
* solib.h:
* std-regs.c:
* stack.h:
* stack.c:
* stabsread.h:
* sparcobsd-tdep.c:
* sparcnbsd-tdep.c:
* sparcnbsd-nat.c:
* sparc64obsd-tdep.c:
* sparc64nbsd-tdep.c:
* sparc64nbsd-nat.c:
* sparc64fbsd-tdep.c:
* sparc64fbsd-nat.c:
* sparc64-tdep.h:
* sparc64-tdep.c:
* sparc64-sol2-tdep.c:
* sparc64-nat.c:
* ui-file.c:
* typeprint.h:
* typeprint.c:
* tramp-frame.h:
* tramp-frame.c:
* trad-frame.h:
* trad-frame.c:
* tracepoint.h:
* top.c:
* tobs.inc:
* thread.c:
* terminal.h:
* target.h:
* symfile.h:
* stop-gdb.c:
* vaxbsd-nat.c:
* vax-tdep.h:
* vax-tdep.c:
* vax-nat.c:
* varobj.h:
* varobj.c:
* value.h:
* value.c:
* valprint.h:
* valprint.c:
* v850-tdep.c:
* uw-thread.c:
* user-regs.c:
* ui-out.h:
* ui-out.c:
* ui-file.h:
* xcoffsolib.h:
* xcoffsolib.c:
* wrapper.c:
* wince.c:
* wince-stub.h:
* wince-stub.c:
* vaxobsd-tdep.c:
* vaxnbsd-tdep.c:
* gdb_gcore.sh:
* copying.c:
* configure.ac:
* aclocal.m4:
* acinclude.m4:
* reply_mig_hack.awk:
* observer.sh:
* gdb_mbuild.sh:
* arm-linux-tdep.c:
* blockframe.c:
* dbug-rom.c:
* environ.h:
* dwarf2loc.h:
* gdb-events.sh:
* glibc-tdep.h:
* gdb_wait.h:
* gdbthread.h:
* i386-sol2-tdep.c:
* hppabsd-tdep.c:
* hppa-linux-nat.c:
* hppa-hpux-nat.c:
* ia64-linux-tdep.c:
* infptrace.c:
* linespec.h:
* maint.c:
* mips-mdebug-tdep.h:
* remote-m32r-sdi.c:
* s390-nat.c:
* rs6000-nat.c:
* remote-utils.h:
* sh3-rom.c:
* sh-linux-tdep.c:
* top.h:
* symtab.h:
* symmisc.c:
* symfile-mem.c:
* srec.h:
* user-regs.h:
* version.h:
* valarith.c:
* xstormy16-tdep.c:
* wrapper.h:
* Makefile.in:
* f-exp.y:
* cris-tdep.c:
* cp-name-parser.y:
* procfs.c:
* proc-utils.h:
* proc-flags.c:
* proc-api.c:
* p-exp.y:
* m68hc11-tdep.c:
* m2-exp.y:
* kod.h:
* kod-cisco.c:
* jv-exp.y:
* hppa-linux-tdep.c: Add (c) after Copyright. Update the FSF
address.
----------------------------
revision 1.1
date: 1999/04/16 01:33:57; author: shebs; state: Exp;
branches: 1.1.1;
Initial revision
----------------------------
revision 1.1.1.1
date: 1999/04/16 01:33:57; author: shebs; state: Exp; lines: +0 -0
Initial creation of sourceware repository
----------------------------
revision 1.2.42.1
date: 2009/12/21 07:43:55; author: brobecke; state: Exp; lines: +624 -292
* COPYING: Update to GPL version 3.
=============================================================================
RCS file: /cvs/src/src/gdb/ChangeLog,v
Working file: ChangeLog
head: 1.15798
branch:
locks: strict
access list:
symbolic names:
gdb_7_6-2013-04-26-release: 1.15260.2.48
gdb_7_6-branch: 1.15260.0.2
gdb_7_6-2013-03-12-branchpoint: 1.15260
gdb_7_5_1-2012-11-29-release: 1.14469.2.40
gdb_7_5-2012-08-17-release: 1.14469.2.23
gdb_7_5-branch: 1.14469.0.2
gdb_7_5-2012-07-18-branchpoint: 1.14469
gdb_7_4_1-2012-04-26-release: 1.13614.2.54
gdb_7_4-2012-01-24-release: 1.13614.2.42
gdb_7_4-branch: 1.13614.0.2
gdb_7_4-2011-12-13-branchpoint: 1.13614
gdb_7_3_1-2011-09-04-release: 1.12887.2.70
gdb_7_3-2011-07-26-release: 1.12887.2.64
gdb_7_3-branch: 1.12887.0.2
gdb_7_3-2011-04-01-branchpoint: 1.12887
gdb_7_2-2010-09-02-release: 1.11973.2.42
gdb_7_2-branch: 1.11973.0.2
gdb_7_2-2010-07-07-branchpoint: 1.11973
gdb_7_1-2010-03-18-release: 1.11378.2.33
gdb_7_1-branch: 1.11378.0.2
gdb_7_1-2010-02-18-branchpoint: 1.11378
gdb_7_0_1-2009-12-22-release: 1.10874.2.60
gdb_7_0-2009-10-06-release: 1.10874.2.46
gdb_7_0-branch: 1.10874.0.2
gdb_7_0-2009-09-16-branchpoint: 1.10874
arc-sim-20090309: 1.9174.2.17.4.1
msnyder-checkpoint-072509-branch: 1.10747.0.2
msnyder-checkpoint-072509-branchpoint: 1.10747
arc-insight_6_8-branch: 1.9174.2.17.0.4
arc-insight_6_8-branchpoint: 1.9174.2.17
insight_6_8-branch: 1.9174.2.17.0.2
insight_6_8-branchpoint: 1.9174.2.17
reverse-20081226-branch: 1.10052.0.2
reverse-20081226-branchpoint: 1.10052
multiprocess-20081120-branch: 1.9991.0.2
multiprocess-20081120-branchpoint: 1.9991
reverse-20080930-branch: 1.9859.0.2
reverse-20080930-branchpoint: 1.9859
reverse-20080717-branch: 1.9579.0.2
reverse-20080717-branchpoint: 1.9579
msnyder-reverse-20080609-branch: 1.9466.0.2
msnyder-reverse-20080609-branchpoint: 1.9466
drow-reverse-20070409-branch: 1.8264.0.2
drow-reverse-20070409-branchpoint: 1.8264
gdb_6_8-2008-03-27-release: 1.9174.2.17
gdb_6_8-branch: 1.9174.0.2
gdb_6_8-2008-02-26-branchpoint: 1.9174
gdb_6_7_1-2007-10-29-release: 1.8684.2.30
gdb_6_7-2007-10-10-release: 1.8684.2.19
gdb_6_7-branch: 1.8684.0.2
gdb_6_7-2007-09-07-branchpoint: 1.8684
insight_6_6-20070208-release: 1.7962.2.20
gdb_6_6-2006-12-18-release: 1.7962.2.19
gdb_6_6-branch: 1.7962.0.2
gdb_6_6-2006-11-15-branchpoint: 1.7962
insight_6_5-20061003-release: 1.7738.2.19
gdb-csl-symbian-6_4_50_20060226-12: 1.7617.2.2
gdb-csl-sourcerygxx-3_4_4-25: 1.7432
nickrob-async-20060828-mergepoint: 1.7891
gdb-csl-symbian-6_4_50_20060226-11: 1.7617.2.2
2013-08-12 11:54:04 +00:00
#
# Test break via convenience variable with file name
#
set line [gdb_get_line_number "set breakpoint 1 here"]
gdb_test_no_output "set \$l = $line"
gdb_breakpoint ${srcfile}:\$l
gdb_test_no_output "set \$foo=81.5" \
"set convenience variable \$foo to 81.5"
gdb_test "break $srcfile:\$foo" \
"Convenience variables used in line specs must have integer values.*" \
"set breakpoint via non-integer convenience variable disallowed"