bfd:
[deliverable/binutils-gdb.git] / gdb / c-lang.c
index 10d54e6e640505a487024c3a2262af1df4f09d86..9e92d7e90915ea6199191d83a7fd5e9bda8d83d9 100644 (file)
@@ -1,5 +1,6 @@
 /* C language support routines for GDB, the GNU debugger.
-   Copyright 1992, 1993, 1994, 2000 Free Software Foundation, Inc.
+   Copyright 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000
+   Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -35,10 +36,7 @@ static void c_emit_char (int c, struct ui_file * stream, int quoter);
    characters and strings is language specific. */
 
 static void
-c_emit_char (c, stream, quoter)
-     register int c;
-     struct ui_file *stream;
-     int quoter;
+c_emit_char (register int c, struct ui_file *stream, int quoter)
 {
   c &= 0xFF;                   /* Avoid sign bit follies */
 
@@ -69,12 +67,18 @@ c_emit_char (c, stream, quoter)
        case '\r':
          fputs_filtered ("\\r", stream);
          break;
+        case '\013':
+          fputs_filtered ("\\v", stream);
+          break;
        case '\033':
          fputs_filtered ("\\e", stream);
          break;
        case '\007':
          fputs_filtered ("\\a", stream);
          break;
+        case '\0':
+          fputs_filtered ("\\0", stream);
+          break;
        default:
          fprintf_filtered (stream, "\\%.3o", (unsigned int) c);
          break;
@@ -83,9 +87,7 @@ c_emit_char (c, stream, quoter)
 }
 
 void
-c_printchar (c, stream)
-     int c;
-     struct ui_file *stream;
+c_printchar (int c, struct ui_file *stream)
 {
   fputc_filtered ('\'', stream);
   LA_EMIT_CHAR (c, stream, '\'');
@@ -99,12 +101,8 @@ c_printchar (c, stream)
    printing LENGTH characters, or if FORCE_ELLIPSES.  */
 
 void
-c_printstr (stream, string, length, width, force_ellipses)
-     struct ui_file *stream;
-     char *string;
-     unsigned int length;
-     int width;
-     int force_ellipses;
+c_printstr (struct ui_file *stream, char *string, unsigned int length,
+           int width, int force_ellipses)
 {
   register unsigned int i;
   unsigned int things_printed = 0;
@@ -117,7 +115,8 @@ c_printstr (stream, string, length, width, force_ellipses)
      style.  */
   if (!force_ellipses
       && length > 0
-  && extract_unsigned_integer (string + (length - 1) * width, width) == '\0')
+      && (extract_unsigned_integer (string + (length - 1) * width, width)
+          == '\0'))
     length--;
 
   if (length == 0)
@@ -223,9 +222,7 @@ c_printstr (stream, string, length, width, force_ellipses)
    debugging information supplied by the compiler.  fnf@cygnus.com */
 
 struct type *
-c_create_fundamental_type (objfile, typeid)
-     struct objfile *objfile;
-     int typeid;
+c_create_fundamental_type (struct objfile *objfile, int typeid)
 {
   register struct type *type = NULL;
 
@@ -250,13 +247,11 @@ c_create_fundamental_type (objfile, typeid)
       type = init_type (TYPE_CODE_BOOL,
                        TARGET_CHAR_BIT / TARGET_CHAR_BIT,
                        0, "bool", objfile);
-
       break;
     case FT_CHAR:
       type = init_type (TYPE_CODE_INT,
                        TARGET_CHAR_BIT / TARGET_CHAR_BIT,
-                       0, "char", objfile);
-      TYPE_FLAGS (type) |= TYPE_FLAG_NOSIGN;
+                       TYPE_FLAG_NOSIGN, "char", objfile);
       break;
     case FT_SIGNED_CHAR:
       type = init_type (TYPE_CODE_INT,
@@ -347,7 +342,6 @@ c_create_fundamental_type (objfile, typeid)
       type = init_type (TYPE_CODE_TEMPLATE_ARG,
                        0,
                        0, "<template arg>", objfile);
-
       break;
     }
   return (type);
@@ -394,23 +388,23 @@ const struct op_print c_op_print_tab[] =
 struct type **CONST_PTR (c_builtin_types[]) =
 {
   &builtin_type_int,
-    &builtin_type_long,
-    &builtin_type_short,
-    &builtin_type_char,
-    &builtin_type_float,
-    &builtin_type_double,
-    &builtin_type_void,
-    &builtin_type_long_long,
-    &builtin_type_signed_char,
-    &builtin_type_unsigned_char,
-    &builtin_type_unsigned_short,
-    &builtin_type_unsigned_int,
-    &builtin_type_unsigned_long,
-    &builtin_type_unsigned_long_long,
-    &builtin_type_long_double,
-    &builtin_type_complex,
-    &builtin_type_double_complex,
-    0
+  &builtin_type_long,
+  &builtin_type_short,
+  &builtin_type_char,
+  &builtin_type_float,
+  &builtin_type_double,
+  &builtin_type_void,
+  &builtin_type_long_long,
+  &builtin_type_signed_char,
+  &builtin_type_unsigned_char,
+  &builtin_type_unsigned_short,
+  &builtin_type_unsigned_int,
+  &builtin_type_unsigned_long,
+  &builtin_type_unsigned_long_long,
+  &builtin_type_long_double,
+  &builtin_type_complex,
+  &builtin_type_double_complex,
+  0
 };
 
 const struct language_defn c_language_defn =
@@ -420,6 +414,7 @@ const struct language_defn c_language_defn =
   c_builtin_types,
   range_check_off,
   type_check_off,
+  case_sensitive_on,
   c_parse,
   c_error,
   evaluate_subexp_standard,
@@ -444,24 +439,24 @@ const struct language_defn c_language_defn =
 struct type **const (cplus_builtin_types[]) =
 {
   &builtin_type_int,
-    &builtin_type_long,
-    &builtin_type_short,
-    &builtin_type_char,
-    &builtin_type_float,
-    &builtin_type_double,
-    &builtin_type_void,
-    &builtin_type_long_long,
-    &builtin_type_signed_char,
-    &builtin_type_unsigned_char,
-    &builtin_type_unsigned_short,
-    &builtin_type_unsigned_int,
-    &builtin_type_unsigned_long,
-    &builtin_type_unsigned_long_long,
-    &builtin_type_long_double,
-    &builtin_type_complex,
-    &builtin_type_double_complex,
-    &builtin_type_bool,
-    0
+  &builtin_type_long,
+  &builtin_type_short,
+  &builtin_type_char,
+  &builtin_type_float,
+  &builtin_type_double,
+  &builtin_type_void,
+  &builtin_type_long_long,
+  &builtin_type_signed_char,
+  &builtin_type_unsigned_char,
+  &builtin_type_unsigned_short,
+  &builtin_type_unsigned_int,
+  &builtin_type_unsigned_long,
+  &builtin_type_unsigned_long_long,
+  &builtin_type_long_double,
+  &builtin_type_complex,
+  &builtin_type_double_complex,
+  &builtin_type_bool,
+  0
 };
 
 const struct language_defn cplus_language_defn =
@@ -471,6 +466,7 @@ const struct language_defn cplus_language_defn =
   cplus_builtin_types,
   range_check_off,
   type_check_off,
+  case_sensitive_on,
   c_parse,
   c_error,
   evaluate_subexp_standard,
@@ -499,6 +495,7 @@ const struct language_defn asm_language_defn =
   c_builtin_types,
   range_check_off,
   type_check_off,
+  case_sensitive_on,
   c_parse,
   c_error,
   evaluate_subexp_standard,
@@ -521,7 +518,7 @@ const struct language_defn asm_language_defn =
 };
 
 void
-_initialize_c_language ()
+_initialize_c_language (void)
 {
   add_language (&c_language_defn);
   add_language (&cplus_language_defn);
This page took 0.027316 seconds and 4 git commands to generate.