Fix crash in dwarf2read.c with template parameters
[deliverable/binutils-gdb.git] / gdb / typeprint.c
index 393d825fe5d95c4686ae6db6ff9ab6a38a5b9eb6..02c045143039f0ddb91628c053a361ae5b351344 100644 (file)
@@ -1,6 +1,6 @@
 /* Language independent support for printing types for GDB, the GNU debugger.
 
-   Copyright (C) 1986-2018 Free Software Foundation, Inc.
+   Copyright (C) 1986-2019 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -120,7 +120,8 @@ print_offset_data::update (struct type *type, unsigned int field_idx,
     {
       /* Since union fields don't have the concept of offsets, we just
         print their sizes.  */
-      fprintf_filtered (stream, "/*              %4u */", TYPE_LENGTH (ftype));
+      fprintf_filtered (stream, "/*              %4s */",
+                       pulongest (TYPE_LENGTH (ftype)));
       return;
     }
 
@@ -183,8 +184,8 @@ print_offset_data::finish (struct type *type, int level,
 
   fputs_filtered ("\n", stream);
   print_spaces_filtered (level + 4 + print_offset_data::indentation, stream);
-  fprintf_filtered (stream, "/* total size (bytes): %4u */\n",
-                   TYPE_LENGTH (type));
+  fprintf_filtered (stream, "/* total size (bytes): %4s */\n",
+                   pulongest (TYPE_LENGTH (type)));
 }
 
 \f
@@ -412,17 +413,16 @@ type_print (struct type *type, const char *varstring, struct ui_file *stream,
 std::string
 type_to_string (struct type *type)
 {
-  TRY
+  try
     {
       string_file stb;
 
       type_print (type, "", &stb, -1);
       return std::move (stb.string ());
     }
-  CATCH (except, RETURN_MASK_ALL)
+  catch (const gdb_exception &except)
     {
     }
-  END_CATCH
 
   return {};
 }
@@ -691,7 +691,6 @@ print_type_scalar (struct type *type, LONGEST val, struct ui_file *stream)
     default:
       error (_("Invalid type code in symbol table."));
     }
-  gdb_flush (stream);
 }
 
 /* Dump details of a type specified either directly or indirectly.
This page took 0.02524 seconds and 4 git commands to generate.