OSDN Git Service

gcc/
[pf3gnuchains/gcc-fork.git] / gcc / scan.h
index 929a1ef..0a1b1af 100644 (file)
@@ -1,19 +1,20 @@
 /* scan.h - Utility declarations for scan-decls and fix-header programs.
-   Copyright (C) 1993 Free Software Foundation, Inc.
+   Copyright (C) 1993, 1998, 1999, 2003, 2004, 2007, 2008 Free Software
+   Foundation, Inc.
 
-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, or (at your option) any
-later version.
+   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 3, 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.
+   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, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+   You should have received a copy of the GNU General Public License
+   along with this program; see the file COPYING3.  If not see
+   <http://www.gnu.org/licenses/>.  */
 
 #include <stdio.h>
 
@@ -33,43 +34,42 @@ typedef struct sstring
 #define MAKE_SSTRING_SPACE(STR, COUNT) \
   if ((STR)->limit - (STR)->ptr < (COUNT)) make_sstring_space (STR, COUNT);
 
-#ifndef _PARAMS
-#if defined(__STDC__) || defined(__cplusplus)
-#define _PARAMS(args) args
-#else
-#define _PARAMS(args) ()
-#endif
-#endif
-
 struct partial_proto;
 struct fn_decl
 {
-  char *fname;
-  char *rtype;
-  char *params;
+  const char *fname;
+  const char *rtype;
+  const char *params;
   struct partial_proto *partial;
 };
 
-extern int lineno;
-extern void sstring_append _PARAMS((sstring *, sstring *));
-extern void make_sstring_space _PARAMS((sstring *, int));
-extern int skip_spaces _PARAMS((FILE *, int));
-extern int scan_ident _PARAMS((FILE *, sstring *, int));
-extern int scan_string _PARAMS((FILE *, sstring *, int));
-extern int read_upto _PARAMS((FILE *, sstring *, int));
-extern char *xmalloc _PARAMS((unsigned));
-extern char *xrealloc _PARAMS((char *, unsigned));
-extern unsigned long hash _PARAMS((const char *));
+struct cpp_token;
+
+extern void sstring_append (sstring *, sstring *);
+extern void make_sstring_space (sstring *, int);
+extern int skip_spaces (FILE *, int);
+extern int scan_ident (FILE *, sstring *, int);
+extern int scan_string (FILE *, sstring *, int);
+extern int read_upto (FILE *, sstring *, int);
+extern unsigned long hash (const char *);
+extern void recognized_function (const struct cpp_token *,
+                                unsigned int, int, int);
+extern void recognized_extern (const struct cpp_token *);
+extern unsigned int hashstr (const char *, unsigned int);
 
-/* get_token is a simple C lexer. */
+extern int scan_decls (struct cpp_reader *, int, char **);
+
+/* get_token is a simple C lexer.  */
 #define IDENTIFIER_TOKEN 300
 #define CHAR_TOKEN 301
 #define STRING_TOKEN 302
 #define INT_TOKEN 303
-extern int get_token _PARAMS ((FILE *, sstring *));
+extern int get_token (FILE *, sstring *);
 
-/* Current file and line numer, taking #-directives into account */
+/* Current file and line number, taking #-directives into account */
 extern int source_lineno;
 extern sstring source_filename;
 /* Current physical line number */
 extern int lineno;
+
+extern struct line_maps line_table;