/* Declarations for variables relating to reading the source file.
Used by parsers, lexical analyzers, and error message routines.
-
- Copyright (C) 1993 Free Software Foundation, Inc.
+ Copyright (C) 1993, 1997, 1998, 2000 Free Software Foundation, Inc.
This file is part of GNU CC.
Boston, MA 02111-1307, USA. */
/* Source file current line is coming from. */
-extern char *input_filename;
+extern const char *input_filename;
/* Top-level source file. */
-extern char *main_input_filename;
+extern const char *main_input_filename;
/* Line number in current source file. */
extern int lineno;
struct file_stack
{
- char *name;
+ const char *name;
struct file_stack *next;
int line;
+ int indent_level;
};
/* Stack of currently pending input files.
/* Incremented on each change to input_file_stack. */
extern int input_file_stack_tick;
+
+extern void push_srcloc PARAMS ((const char *name, int line));
+extern void pop_srcloc PARAMS ((void));