+/* source.h
+
+ Copyright 2000, 2001, 2002, 2004 Free Software Foundation, Inc.
+
+This file is part of GNU Binutils.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or
+(at your option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+\f
#ifndef source_h
#define source_h
-#include <stdio.h>
-#include "gprof.h"
-#include "search_list.h"
-
typedef struct source_file
{
struct source_file *next;
- const char *name; /* name of source file */
- int ncalls; /* # of "calls" to this file */
- int num_lines; /* # of lines in file */
- int nalloced; /* number of lines allocated */
- void **line; /* usage-dependent per-line data */
+ const char *name; /* Name of source file. */
+ unsigned long ncalls; /* # of "calls" to this file. */
+ int num_lines; /* # of lines in file. */
+ int nalloced; /* Number of lines allocated. */
+ void **line; /* Usage-dependent per-line data. */
}
Source_File;
-/*
- * Options:
- */
-extern bool create_annotation_files; /* create annotated output files? */
+/* Options. */
-/*
- * List of directories to search for source files:
- */
+/* Create annotated output files? */
+extern bfd_boolean create_annotation_files;
+
+/* List of directories to search for source files. */
extern Search_List src_search_list;
-/*
- * Chain of source-file descriptors:
- */
+/* Chain of source-file descriptors. */
extern Source_File *first_src_file;
-/*
- * Returns pointer to source file descriptor for PATH/FILENAME.
- */
-extern Source_File *source_file_lookup_path PARAMS ((const char *path));
-extern Source_File *source_file_lookup_name PARAMS ((const char *filename));
-
-/*
- * Read source file SF output annotated source. The annotation is at
- * MAX_WIDTH characters wide and for each source-line an annotation is
- * obtained by invoking function ANNOTE. ARG is an argument passed to
- * ANNOTE that is left uninterpreted by annotate_source().
- *
- * Returns a pointer to the output file (which maybe stdout) such
- * that summary statistics can be printed. If the returned file
- * is not stdout, it should be closed when done with it.
- */
-extern FILE *annotate_source PARAMS ((Source_File * sf, int max_width,
- void (*annote) (char *b, int w, int l,
- void *arg),
- void *arg));
-
+/* Returns pointer to source file descriptor for PATH/FILENAME. */
+extern Source_File *source_file_lookup_path (const char *);
+extern Source_File *source_file_lookup_name (const char *);
+
+/* Read source file SF output annotated source. The annotation is at
+ MAX_WIDTH characters wide and for each source-line an annotation is
+ obtained by invoking function ANNOTE. ARG is an argument passed to
+ ANNOTE that is left uninterpreted by annotate_source().
+
+ Returns a pointer to the output file (which maybe stdout) such
+ that summary statistics can be printed. If the returned file
+ is not stdout, it should be closed when done with it. */
+extern FILE *annotate_source
+ (Source_File *sf, unsigned int max_width,
+ void (*annote) (char *, unsigned int, int, PTR arg),
+ PTR arg);
#endif /* source_h */