diff options
author | Fernando Nasser <fnasser@redhat.com> | 2002-09-22 22:18:41 +0000 |
---|---|---|
committer | Fernando Nasser <fnasser@redhat.com> | 2002-09-22 22:18:41 +0000 |
commit | 53cb0458d6870af83b2bc9fab8738a29b64f702e (patch) | |
tree | b264bc0d29862d82e707c49717eafad38055c402 /gdb/source.c | |
parent | c214a6fd4d4e7d6d8bfd1dc355442070a63ca61a (diff) | |
download | gdb-53cb0458d6870af83b2bc9fab8738a29b64f702e.zip gdb-53cb0458d6870af83b2bc9fab8738a29b64f702e.tar.gz gdb-53cb0458d6870af83b2bc9fab8738a29b64f702e.tar.bz2 |
* source.c (get_current_or_default_source_symtab_and_line): Remove
function.
(set_default_source_symtab_and_line): New function. Attempts to
determine a source file to list lines from if one is not currently
defined.
(get_current_source_symtab_and_line): Initialize sal.pc and
sal.end fields.
(set_current_source_symtab_and_line): Mark argument as const.
* source.h: Update declarations and comments.
* linespec.c (decode_line_1): Replace call to removed routine above.
* stack.c (print_frame_info_base): Ditto.
* cli/cli-cmds.c (edit_command): Ditto.
(list_command): Ditto.
Diffstat (limited to 'gdb/source.c')
-rw-r--r-- | gdb/source.c | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/gdb/source.c b/gdb/source.c index d2e47fe..5c88a55 100644 --- a/gdb/source.c +++ b/gdb/source.c @@ -152,21 +152,22 @@ get_current_source_symtab_and_line (void) cursal.symtab = current_source_symtab; cursal.line = current_source_line; + cursal.pc = 0; + cursal.end = 0; return cursal; } -/* Return the current source file for listing and next line to list. - If a file is not set, try and get a default. +/* If the current source file for listing is not set, try and get a default. + Usually called before get_current_source_symtab_and_line() is called. It may err out if a default cannot be determined. - Depending on where it is called, it can recurse as the process of - determining a new default may call the caler! - Use get_current_source_symtab_and_line instead to get whatever - we have without erroring out or trying to get a default. - NOTE: The returned sal pc and end fields are not valid. */ + We must be cautious about where it is called, as it can recurse as the + process of determining a new default may call the caller! + Use get_current_source_symtab_and_line only to get whatever + we have without erroring out or trying to get a default. */ -struct symtab_and_line -get_current_or_default_source_symtab_and_line (void) +void +set_default_source_symtab_and_line (void) { struct symtab_and_line cursal; @@ -176,21 +177,15 @@ get_current_or_default_source_symtab_and_line (void) /* Pull in a current source symtab if necessary */ if (current_source_symtab == 0) select_source_symtab (0); - - cursal.symtab = current_source_symtab; - cursal.line = current_source_line; - cursal.pc = 0; - cursal.end = 0; - - return cursal; } /* Return the current default file for listing and next line to list (the returned sal pc and end fields are not valid.) - and set the surrent default to whatever is in SAL */ + and set the current default to whatever is in SAL. + NOTE: The returned sal pc and end fields are not valid. */ struct symtab_and_line -set_current_source_symtab_and_line (struct symtab_and_line *sal) +set_current_source_symtab_and_line (const struct symtab_and_line *sal) { struct symtab_and_line cursal; |