/* Fortran language support routines for GDB, the GNU debugger.
- Copyright 1993, 1994, 1996 Free Software Foundation, Inc.
+ Copyright 1993, 1994, 1996, 2000 Free Software Foundation, Inc.
Contributed by Motorola. Adapted from the C parser by Farooq Butt
(fmbutt@engage.sps.mot.com).
#include "parser-defs.h"
#include "language.h"
#include "f-lang.h"
+#include "valprint.h"
/* The built-in types of F77. FIXME: integer*4 is missing, plain
logical is missing (builtin_type_logical is logical*4). */
/* Local functions */
-extern void _initialize_f_language PARAMS ((void));
+extern void _initialize_f_language (void);
#if 0
-static void clear_function_list PARAMS ((void));
-static long get_bf_for_fcn PARAMS ((long));
-static void clear_bf_list PARAMS ((void));
-static void patch_all_commons_by_name PARAMS ((char *, CORE_ADDR, int));
-static SAVED_F77_COMMON_PTR find_first_common_named PARAMS ((char *));
-static void add_common_entry PARAMS ((struct symbol *));
-static void add_common_block PARAMS ((char *, CORE_ADDR, int, char *));
-static SAVED_FUNCTION *allocate_saved_function_node PARAMS ((void));
-static SAVED_BF_PTR allocate_saved_bf_node PARAMS ((void));
-static COMMON_ENTRY_PTR allocate_common_entry_node PARAMS ((void));
-static SAVED_F77_COMMON_PTR allocate_saved_f77_common_node PARAMS ((void));
-static void patch_common_entries PARAMS ((SAVED_F77_COMMON_PTR, CORE_ADDR, int));
+static void clear_function_list (void);
+static long get_bf_for_fcn (long);
+static void clear_bf_list (void);
+static void patch_all_commons_by_name (char *, CORE_ADDR, int);
+static SAVED_F77_COMMON_PTR find_first_common_named (char *);
+static void add_common_entry (struct symbol *);
+static void add_common_block (char *, CORE_ADDR, int, char *);
+static SAVED_FUNCTION *allocate_saved_function_node (void);
+static SAVED_BF_PTR allocate_saved_bf_node (void);
+static COMMON_ENTRY_PTR allocate_common_entry_node (void);
+static SAVED_F77_COMMON_PTR allocate_saved_f77_common_node (void);
+static void patch_common_entries (SAVED_F77_COMMON_PTR, CORE_ADDR, int);
#endif
-static struct type *f_create_fundamental_type PARAMS ((struct objfile *, int));
-static void f_printstr PARAMS ((GDB_FILE * stream, char *string, unsigned int length, int width, int force_ellipses));
-static void f_printchar PARAMS ((int c, GDB_FILE * stream));
-static void f_emit_char PARAMS ((int c, GDB_FILE * stream, int quoter));
+static struct type *f_create_fundamental_type (struct objfile *, int);
+static void f_printstr (struct ui_file * stream, char *string,
+ unsigned int length, int width,
+ int force_ellipses);
+static void f_printchar (int c, struct ui_file * stream);
+static void f_emit_char (int c, struct ui_file * stream, int quoter);
/* Print the character C on STREAM as part of the contents of a literal
string whose delimiter is QUOTER. Note that that format for printing
static void
f_emit_char (c, stream, quoter)
register int c;
- GDB_FILE *stream;
+ struct ui_file *stream;
int quoter;
{
c &= 0xFF; /* Avoid sign bit follies */
static void
f_printchar (c, stream)
int c;
- GDB_FILE *stream;
+ struct ui_file *stream;
{
fputs_filtered ("'", stream);
LA_EMIT_CHAR (c, stream, '\'');
static void
f_printstr (stream, string, length, width, force_ellipses)
- GDB_FILE *stream;
+ struct ui_file *stream;
char *string;
unsigned int length;
int width;
int in_quotes = 0;
int need_comma = 0;
extern int inspect_it;
- extern int repeat_count_threshold;
- extern int print_max;
if (length == 0)
{
/* This is declared in c-lang.h but it is silly to import that file for what
is already just a hack. */
-extern int
-c_value_print PARAMS ((struct value *, GDB_FILE *, int, enum val_prettyprint));
+extern int c_value_print (struct value *, struct ui_file *, int,
+ enum val_prettyprint);
const struct language_defn f_language_defn =
{
item at the head of the queue is the one you want) */
if (saved_bf_list == NULL)
- fatal ("cannot get .bf node off empty list");
+ internal_error ("cannot get .bf node off empty list");
if (current_head_bf_list != NULL)
if (current_head_bf_list->symnum_fcn == the_function)