ld relro
[platform/upstream/binutils.git] / gdb / p-lang.c
index 114efbc..98fcc3b 100644 (file)
@@ -1,7 +1,6 @@
 /* Pascal language support routines for GDB, the GNU debugger.
 
-   Copyright (C) 2000, 2002-2005, 2007-2012 Free Software Foundation,
-   Inc.
+   Copyright (C) 2000-2014 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
 /* This file is derived from c-lang.c */
 
 #include "defs.h"
-#include "gdb_string.h"
 #include "symtab.h"
 #include "gdbtypes.h"
 #include "expression.h"
 #include "parser-defs.h"
 #include "language.h"
+#include "varobj.h"
 #include "p-lang.h"
 #include "valprint.h"
 #include "value.h"
@@ -59,23 +58,23 @@ static const char GPC_MAIN_PROGRAM_NAME_2[] = "pascal_main_program";
 const char *
 pascal_main_name (void)
 {
-  struct minimal_symbol *msym;
+  struct bound_minimal_symbol msym;
 
   msym = lookup_minimal_symbol (GPC_P_INITIALIZE, NULL, NULL);
 
   /*  If '_p_initialize' was not found, the main program is likely not
      written in Pascal.  */
-  if (msym == NULL)
+  if (msym.minsym == NULL)
     return NULL;
 
   msym = lookup_minimal_symbol (GPC_MAIN_PROGRAM_NAME_1, NULL, NULL);
-  if (msym != NULL)
+  if (msym.minsym != NULL)
     {
       return GPC_MAIN_PROGRAM_NAME_1;
     }
 
   msym = lookup_minimal_symbol (GPC_MAIN_PROGRAM_NAME_2, NULL, NULL);
-  if (msym != NULL)
+  if (msym.minsym != NULL)
     {
       return GPC_MAIN_PROGRAM_NAME_2;
     }
@@ -280,10 +279,7 @@ pascal_printstr (struct ui_file *stream, struct type *type,
        {
          if (in_quotes)
            {
-             if (options->inspect_it)
-               fputs_filtered ("\\', ", stream);
-             else
-               fputs_filtered ("', ", stream);
+             fputs_filtered ("', ", stream);
              in_quotes = 0;
            }
          pascal_printchar (current_char, type, stream);
@@ -296,10 +292,7 @@ pascal_printstr (struct ui_file *stream, struct type *type,
        {
          if ((!in_quotes) && (PRINT_LITERAL_FORM (current_char)))
            {
-             if (options->inspect_it)
-               fputs_filtered ("\\'", stream);
-             else
-               fputs_filtered ("'", stream);
+             fputs_filtered ("'", stream);
              in_quotes = 1;
            }
          pascal_one_char (current_char, stream, &in_quotes);
@@ -309,12 +302,7 @@ pascal_printstr (struct ui_file *stream, struct type *type,
 
   /* Terminate the quotes if necessary.  */
   if (in_quotes)
-    {
-      if (options->inspect_it)
-       fputs_filtered ("\\'", stream);
-      else
-       fputs_filtered ("'", stream);
-    }
+    fputs_filtered ("'", stream);
 
   if (force_ellipses || i < length)
     fputs_filtered ("...", stream);
@@ -427,6 +415,7 @@ pascal_language_arch_info (struct gdbarch *gdbarch,
 const struct language_defn pascal_language_defn =
 {
   "pascal",                    /* Language name */
+  "Pascal",
   language_pascal,
   range_check_on,
   case_sensitive_on,
@@ -461,6 +450,7 @@ const struct language_defn pascal_language_defn =
   default_get_string,
   NULL,                                /* la_get_symbol_name_cmp */
   iterate_over_symbols,
+  &default_varobj_ops,
   LANG_MAGIC
 };