2002-05-09 Elena Zannoni <ezannoni@redhat.com>

From Daniel Berlin <dan@cgsoftware.com>
	* linespec.c (find_toplevel_char): '<' and '>' also increase and
	decrease the depth we are at, in the case of templates.
This commit is contained in:
Elena Zannoni 2002-05-10 00:29:23 +00:00
parent d0965404a4
commit 8120c9d5cc
2 changed files with 11 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2002-05-09 Elena Zannoni <ezannoni@redhat.com>
From Daniel Berlin <dan@cgsoftware.com>
* linespec.c (find_toplevel_char): '<' and '>' also increase and
decrease the depth we are at, in the case of templates.
2002-05-09 Daniel Jacobowitz <drow@mvista.com>
* mips-tdep.c (mips_float_register_type): New function.

View File

@ -298,7 +298,9 @@ build_canonical_line_spec (struct symtab_and_line *sal, char *symname,
/* Find an instance of the character C in the string S that is outside
of all parenthesis pairs, single-quoted strings, and double-quoted
strings. */
strings. Also, ignore the char within a template name, like a ','
within foo<int, int>. */
static char *
find_toplevel_char (char *s, char c)
{
@ -321,9 +323,9 @@ find_toplevel_char (char *s, char c)
return scan;
else if (*scan == '"' || *scan == '\'')
quoted = *scan;
else if (*scan == '(')
else if (*scan == '(' || *scan == '<')
depth++;
else if (*scan == ')' && depth > 0)
else if ((*scan == ')' || *scan == '>') && depth > 0)
depth--;
}