std::vector<block_symbol> *function_symbols;
   } labels;
 };
-typedef struct linespec *linespec_p;
 
 /* A canonical linespec represented as a symtab-related string.
 
 CORE_ADDR linespec_expression_to_pc (const char **exp_ptr);
 
 static std::vector<symtab_and_line> decode_objc (struct linespec_state *self,
-                                                linespec_p ls,
+                                                linespec *ls,
                                                 const char *arg);
 
 static std::vector<symtab *> symtabs_from_filename
 
 static std::vector<symtab_and_line> decode_digits_ordinary
   (struct linespec_state *self,
-   linespec_p ls,
+   linespec *ls,
    int line,
    linetable_entry **best_entry);
 
 static std::vector<symtab_and_line> decode_digits_list_mode
   (struct linespec_state *self,
-   linespec_p ls,
+   linespec *ls,
    struct symtab_and_line val);
 
 static void minsym_found (struct linespec_state *self, struct objfile *objfile,
    locations.  */
 
 static void
-canonicalize_linespec (struct linespec_state *state, const linespec_p ls)
+canonicalize_linespec (struct linespec_state *state, const linespec *ls)
 {
   struct event_location *canon;
   struct explicit_location *explicit_loc;
 
 static std::vector<symtab_and_line>
 create_sals_line_offset (struct linespec_state *self,
-                        linespec_p ls)
+                        linespec *ls)
 {
   int use_default = 0;
 
 /* Create and return SALs from the linespec LS.  */
 
 static std::vector<symtab_and_line>
-convert_linespec_to_sals (struct linespec_state *state, linespec_p ls)
+convert_linespec_to_sals (struct linespec_state *state, linespec *ls)
 {
   std::vector<symtab_and_line> sals;
 
 
 static void
 convert_explicit_location_to_linespec (struct linespec_state *self,
-                                      linespec_p result,
+                                      linespec *result,
                                       const char *source_filename,
                                       const char *function_name,
                                       symbol_name_match_type fname_match_type,
 
 static std::vector<symtab_and_line>
 convert_explicit_location_to_sals (struct linespec_state *self,
-                                  linespec_p result,
+                                  linespec *result,
                                   const struct explicit_location *explicit_loc)
 {
   convert_explicit_location_to_linespec (self, result,
    the existing C++ code to let the user choose one.  */
 
 static std::vector<symtab_and_line>
-decode_objc (struct linespec_state *self, linespec_p ls, const char *arg)
+decode_objc (struct linespec_state *self, linespec *ls, const char *arg)
 {
   struct collect_info info;
   std::vector<const char *> symbol_names;
 
 static std::vector<symtab_and_line>
 decode_digits_list_mode (struct linespec_state *self,
-                        linespec_p ls,
+                        linespec *ls,
                         struct symtab_and_line val)
 {
   gdb_assert (self->list_mode);
 
 static std::vector<symtab_and_line>
 decode_digits_ordinary (struct linespec_state *self,
-                       linespec_p ls,
+                       linespec *ls,
                        int line,
                        struct linetable_entry **best_entry)
 {