2011-10-27 Phil Muldoon <pmuldoon@redhat.com>
[deliverable/binutils-gdb.git] / gdb / linespec.h
index 5c06cc8cfa25837e5a77668e820bd6652a6795e1..3c86af36cbda169c21a9ea5a2bd955a6b2c108c4 100644 (file)
@@ -1,9 +1,10 @@
 /* Header for GDB line completion.
-   Copyright (C) 2000 Free Software Foundation, Inc.
+   Copyright (C) 2000, 2007, 2008, 2009, 2010, 2011
+   Free Software Foundation, Inc.
 
    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
-   the Free Software Foundation; either version 2 of the License, or
+   the Free Software Foundation; either version 3 of the License, or
    (at your option) any later version.
 
    This program is distributed in the hope that it will be useful,
    GNU General Public License for more details.
 
    You should have received a copy of the GNU General Public License
-   along with this program; if not, write to the Free Software
-   Foundation, Inc., 51 Franklin Street, Fifth Floor,
-   Boston, MA 02110-1301, USA.  */
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.  */
 
 #if !defined (LINESPEC_H)
 #define LINESPEC_H 1
 
 struct symtab;
 
+/* An instance of this may be filled in by decode_line_1.  The caller
+   must call init_linespec_result to initialize it.  */
+
+struct linespec_result
+{
+  /* If non-zero, the linespec should be displayed to the user.  This
+     is used by "unusual" linespecs where the ordinary `info break'
+     display mechanism would do the wrong thing.  */
+  int special_display;
+
+  /* If non-NULL, an array of canonical names for returned
+     symtab_and_line objects.  The array has as many elements as the
+     `nelts' field in the symtabs_and_line returned by decode_line_1.
+     An element in the array may be NULL.  The array and each non-NULL
+     element in it are allocated with xmalloc and must be freed by the
+     caller.  */
+  char **canonical;
+};
+
+/* Initialize a linespec_result.  */
+
+extern void init_linespec_result (struct linespec_result *);
+
 extern struct symtabs_and_lines
        decode_line_1 (char **argptr, int funfirstline,
                       struct symtab *default_symtab, int default_line,
-                      char ***canonical, int *not_found_ptr);
+                      struct linespec_result *canonical);
 
 #endif /* defined (LINESPEC_H) */
This page took 0.024741 seconds and 4 git commands to generate.