gcc/gcc/opts.h
Zack Weinberg 6de6668085 langhooks.c: Don't include gt-langhooks.h.
* langhooks.c: Don't include gt-langhooks.h.
	(var_labelno): Delete.
	(lhd_set_decl_assembler_name): Do not append a distinguishing
	number to file-scope internal-linkage declarations for the first
	input file, even if they have DECL_CONTEXT set.  Use DECL_UID of
	the declaration itself (if at block scope), or its containing
	TRANSLATION_UNIT_DECL (if at file scope) for the distinguishing
	number.

	* opts.c (cur_in_fname): New global.
	* opts.h: Declare it.
	* tree.c: Include opts.h.
	(make_node_stat): If creating a TRANSLATION_UNIT_DECL, give it
	DECL_UID equal to cur_in_fname.
	(copy_node_stat): Do not change DECL_UID when copying a
	TRANSLATION_UNIT_DECL.
	(build_common_tree_nodes): Adjust next_decl_uid to reserve the
	range 0 .. num_in_fnames-1 for TRANSLATION_UNIT_DECLs.

	* c-decl.c (c_static_assembler_name): Delete.
	* c-tree.h (c_static_assembler_name): Delete prototype.
	* c-lang.c, objc/objc-lang.c: Don't override
	LANG_HOOKS_SET_DECL_ASSEMBLER_NAME.

	* Makefile.in (tree.o): Update dependencies.
	(GTFILES): Remove langhooks.c.

cp:
	* decl.c (cxx_init_decl_processing): Call
	build_common_tree_nodes before creating the global NAMESPACE_DECL.

From-SVN: r84123
2004-07-05 17:28:37 +00:00

65 lines
1.9 KiB
C

/* Command line option handling.
Copyright (C) 2002, 2003 Free Software Foundation, Inc.
This file is part of GCC.
GCC 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.
GCC 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 GCC; see the file COPYING. If not, write to the Free
Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
#ifndef GCC_OPTS_H
#define GCC_OPTS_H
extern void decode_options (unsigned int argc, const char **argv);
extern void add_input_filename (const char *filename);
struct cl_option
{
const char *opt_text;
const char *help;
unsigned short back_chain;
unsigned char opt_len;
unsigned int flags;
int *flag_var;
int has_set_value;
int set_value;
};
extern const struct cl_option cl_options[];
extern const unsigned int cl_options_count;
extern const char *const lang_names[];
#define CL_REPORT (1 << 23) /* Report argument with -fverbose-asm */
#define CL_JOINED (1 << 24) /* If takes joined argument. */
#define CL_SEPARATE (1 << 25) /* If takes a separate argument. */
#define CL_REJECT_NEGATIVE (1 << 26) /* Reject no- form. */
#define CL_MISSING_OK (1 << 27) /* Missing argument OK (joined). */
#define CL_UINTEGER (1 << 28) /* Argument is an integer >=0. */
#define CL_COMMON (1 << 29) /* Language-independent. */
#define CL_UNDOCUMENTED (1 << 30) /* Do not output with --help. */
/* Input file names. */
extern const char **in_fnames;
/* The count of input filenames. */
extern unsigned num_in_fnames;
/* Current input filename index. */
extern unsigned cur_in_fname;
#endif