Commit Graph

66554 Commits

Author SHA1 Message Date
Ben Elliston
334f3a34cd re PR c++/16792 (ICE in gen_subprogram_die, at dwarf2out.c:11267)
PR debug/16792
	* g++.dg/debug/pr16792.C: New test.

From-SVN: r96396
2005-03-14 09:17:59 +11:00
Eric Botcazou
1da4c3a710 sparc.c (struct_value_alias_set): New global variable.
* config/sparc/sparc.c (struct_value_alias_set): New global variable.
	(sparc_override_options): Initialize it.
	(sparc_struct_value_rtx): Set it on the MEM to be returned.

From-SVN: r96395
2005-03-13 22:11:46 +00:00
Joseph Myers
053e7c38b3 anon-struct-6.c, [...]: Ensure uniqueness of test assertion names.
* gcc.dg/anon-struct-6.c, gcc.dg/array-8.c,
	gcc.dg/cpp/19940712-1.c, gcc.dg/cpp/19951025-1.c,
	gcc.dg/cpp/tr-warn6.c, gcc.dg/deprecated.c, gcc.dg/init-bad-1.c,
	gcc.dg/init-bad-2.c, gcc.dg/init-bad-3.c, gcc.dg/m-un-2.c,
	gcc.dg/parm-mismatch-1.c, gcc.dg/redecl-1.c: Ensure uniqueness of
	test assertion names.

From-SVN: r96391
2005-03-13 21:13:41 +00:00
David Edelsohn
97c54d9afb predicates.md (mem_or_easy_const_operand): Delete.
* config/rs6000/predicates.md (mem_or_easy_const_operand): Delete.
        (reg_or_none500mem_operand): New predicate.
        (zero_reg_mem_operand): New predicate.
        * config/rs6000/rs6000.md (extendsfdf2): Change operand1 predicate
        to reg_or_none500mem_operand.
        (extendsfdf2_fpr): Add MEM alternative.
        (extenddftf2_internal): Change operand2 predicate to
        zero_reg_mem_operand.

From-SVN: r96390
2005-03-13 15:28:29 -05:00
Tobias Schlüter
f96c612393 re PR fortran/18600 (ICE NIST FM020.f reduced case)
PR fortran/18600
* gfortran.dg/stfunc_1.f90: New test.

From-SVN: r96389
2005-03-13 20:28:18 +01:00
Tobias Schlüter
ee9430623a re PR fortran/16907 (Non-integer array indices rejected)
fortran/
PR fortran/16907
* resolve.c (gfc_resolve_index): Allow REAL indices as an extension.

testsuite/
PR fortran/16907
* gfortran.dg/real_index_1.f90: New test.

From-SVN: r96385
2005-03-13 19:46:36 +01:00
Tobias Schlüter
8f9c06ca82 re PR fortran/20323 (optional arguments incorrectly accepted in specification expressions)
fortran/
PR fortran/20323
* resolve.c (gfc_resolve): Check if character lengths are
specification expressions.

testsuite/
PR fortran/20323
* gfortran.dg/spec_expr_1.f90: New test.

From-SVN: r96382
2005-03-13 19:37:17 +01:00
Daniel Jacobowitz
08cee789cd ggc-zone.c: Rewritten.
* ggc-zone.c: Rewritten.

	* alloc-pool.c (dump_alloc_pool_statistics): Don't print statistics
	if there are none.
	* configure.ac: Define GGC_ZONE for --with-gc=zone.
	* config.in: Regenerated.
	* configure: Regenerated.
	* gentype.c (write_types_process_field, write_func_for_structure):
	Pass new argument to gt_pch_note_object.
	* ggc-common.c (struct ptr_data): Add TYPE.
	(gt_pch_note_object): Take TYPE argument and save it.
	(call_count): Update call to ggc_pch_count_object.
	(call_alloc): Update call to ggc_pch_alloc_object.
	(gt_pch_save): Call ggc_pch_prepare_write after paddng the PCH
	file.
	* ggc-none.c (rtl_zone, garbage_zone, ggc_alloc_zone_stat): Delete.
	* ggc-page.c (rtl_zone, tree_zone, garbage_zone)
	(ggc_alloc_zone_stat): Delete.
	(ggc_pch_count_object, ggc_pch_alloc_object): Add TYPE argument.
	* ggc.h (gt_pch_note_object, ggc_pch_count_object)
	(ggc_pch_alloc_object): Update prototypes.
	(garbage_zone): Delete.
	(tree_zone, rtl_zone, ggc_alloc_zone_stat, ggc_alloc_zone): Move to
	GGC_ZONE conditional.  Update.  Change tree_zone and rtl_zone into
	pointers.
	(tree_id_zone): New variable.
	(ggc_alloc_cleared_zone): Remove unused.
	(ggc_alloc_zone): Define.
	(ggc_alloc_rtvec, ggc_alloc_tree): Update to use ggc_alloc_zone.
	* rtl.c (rtx_alloc_stat, shallow_copy_rtx_stat): Use
	ggc_alloc_zone_stat.
	* stringpool.c (gt_pch_n_S): Update call to gt_pch_note_object.
	* tree.c (copy_node_stat, make_tree_binfo_stat, make_tree_vec_stat)
	(tree_cons_stat, build1_stat): Update call to ggc_alloc_zone_stat.
	(make_node_stat): Likewise.  Use tree_id_zone.

From-SVN: r96381
2005-03-13 18:09:55 +00:00
Daniel Jacobowitz
69229b8198 configure.ac: Check for MIPS TLS.
* configure.ac: Check for MIPS TLS.
	* configure: Regenerated.
	* config/mips/mips-protos.h (enum mips_symbol_type): Add
	SYMBOL_TLS, SYMBOL_TLSGD, SYMBOL_TLSLDM, SYMBOL_DTPREL,
	SYMBOL_GOTTPREL, and SYMBOL_TPREL.
	* config/mips/mips.c (mips_regno_to_class): Handle V1_REG.
	(TARGET_HAVE_TLS, TARGET_CANNOT_FORCE_CONST_MEM): Define.
	(mips_classify_symbol, mips_symbolic_constant_p)
	(mips_symbolic_address_p, mips_symbol_insns): Handle TLS symbols.
	(mips_tls_operand_p, mips_call_tls_get_addr)
	(mips_legitimize_tls_address, mips_cannot_force_const_mem)
	(mips_tls_symbol_ref_1): New functions.
	(mips_legitimize_address, mips_legitimize_const_move): Call
	mips_legitimize_tls_address.
	(override_options): Handle V1_REG and TLS symbols.  Disable TLS
	for MIPS16.
	* config/mips/mips.h (enum reg_class, REG_CLASS_NAMES)
	(REG_CLASS_CONTENTS, GR_REG_CLASS_P): Include V1_REG.
	(mips_char_to_class): Document V1_REG.
	(HAVE_AS_TLS): Provide default.
	* config/mips/mips.md (UNSPEC_TLS_LDM, UNSPEC_TLS_GET_TP): New
	constants.
	(load_got<mode>): Renamed from *load_got<mode>.  Allow when
	!TARGET_ABICALLS.
	(tls_get_tp_<mode>): New instruction.

Co-Authored-By: Joseph Myers <joseph@codesourcery.com>

From-SVN: r96380
2005-03-13 18:03:25 +00:00
Daniel Jacobowitz
b095fe2cd9 configure.ac: Update checks for target tools.
* configure.ac: Update checks for target tools.
	* configure: Regenerated.

From-SVN: r96379
2005-03-13 17:57:49 +00:00
Daniel Jacobowitz
0bfb33e513 * varasm.c (decl_tls_model): Check flag_shlib instead of flag_pic.
From-SVN: r96378
2005-03-13 17:56:14 +00:00
Roger Sayle
65dc935013 expmed.c (expand_mult): Use synthetic multiplication sequences for more classes of DImode...
* expmed.c (expand_mult): Use synthetic multiplication sequences for
	more classes of DImode multiplication by constant.  Allow both
	multiplication by small negative constants (by performing a
	multiplication by a positive constant and negating the result) and
	multiplications by large powers of two, by using a left shift.

From-SVN: r96377
2005-03-13 17:06:42 +00:00
Kazu Hirata
92c54d2c4e tree-ssa-phiopt.c (value_replacement): Remove local variable result.
* tree-ssa-phiopt.c (value_replacement): Remove local variable
	result.

From-SVN: r96376
2005-03-13 15:58:31 +00:00
Kazu Hirata
0b4961d01a tree-ssa-live.c (build_tree_conflict_graph): Remove local variable ann.
* tree-ssa-live.c (build_tree_conflict_graph): Remove local
	variable ann.

From-SVN: r96375
2005-03-13 15:57:31 +00:00
Kazu Hirata
ed9cef2296 * tree-cfg.c (group_case_labels): Remove local variable type.
From-SVN: r96374
2005-03-13 15:55:32 +00:00
Kazu Hirata
30a6aaedd7 lambda-code.c (lambda_compute_auxillary_space): Remove local variable determinant.
* lambda-code.c (lambda_compute_auxillary_space): Remove local
	variable determinant.

From-SVN: r96373
2005-03-13 15:54:15 +00:00
Kazu Hirata
b475548eeb builtins.c (expand_builtin_mathfn_3): Remove local variable before_call.
* builtins.c (expand_builtin_mathfn_3): Remove local variable
	before_call.

From-SVN: r96372
2005-03-13 15:53:13 +00:00
Kazu Hirata
b87e6936ad builtins.c (fold_trunc_transparent_mathfn, [...]): Use TYPE (TYPE (fndecl)) instead of TREE_TYPE (exp).
* builtins.c (fold_trunc_transparent_mathfn,
	fold_fixed_mathfn, fold_builtin_atan, fold_builtin_trunc,
	fold_builtin_floor, fold_builtin_ceil, fold_builtin_round,
	fold_builtin_lround, fold_builtin_bitop, fold_builtin_memcpy,
	fold_builtin_strcpy, fold_builtin_strncpy,
	fold_builtin_signbit): Use TYPE (TYPE (fndecl)) instead of
	TREE_TYPE (exp).

From-SVN: r96371
2005-03-13 15:51:08 +00:00
Kazu Hirata
13d21cb725 c-decl.c (c_init_decl_processing): Remove useless calls to build_function_type.
* c-decl.c (c_init_decl_processing): Remove useless calls to
	build_function_type.

From-SVN: r96370
2005-03-13 14:23:31 +00:00
Kazu Hirata
d4ff96d5fc builtin-attrs.def, [...]: Update copyright.
* builtin-attrs.def, c-lex.c, c-pragma.h, reg-stack.c,
	config/mips/vr.h: Update copyright.

From-SVN: r96369
2005-03-13 14:06:48 +00:00
Feng Wang
009bbd5a13 MAINTAINERS (Write After Approval): Add myself.
2005-03-13  Feng Wang  <fengwang@nudt.edu.cn>

        * MAINTAINERS (Write After Approval): Add myself.

From-SVN: r96368
2005-03-13 14:05:58 +00:00
Kazu Hirata
d357720d41 tree-into-ssa.c (find_idf): Speed up by putting the indexes of basic blocks into work_stack.
* tree-into-ssa.c (find_idf): Speed up by putting the indexes
	of basic blocks into work_stack.

From-SVN: r96367
2005-03-13 13:31:01 +00:00
Andy Hutchinson
6bbaec0912 re PR target/18251 (unable to find a register to spill in class `POINTER_REGS')
PR target/18251
	* config/avr/avr.md (movmemhi): Rewrite as RTL loop.
	(*movmemqi_insn): Delete.
	(*movmemhi): Delete.

From-SVN: r96365
2005-03-13 10:09:53 +00:00
Kazu Hirata
5cb08bab24 builtins.c (fold_builtin_classify): Take decomposed arguments of CALL_EXPR.
* builtins.c (fold_builtin_classify): Take decomposed
	arguments of CALL_EXPR.
	(fold_builtin_1): Update a call to fold_builtin_classify.

From-SVN: r96364
2005-03-13 04:35:12 +00:00
Joseph Myers
67c2939d3e re PR c/20402 (gcc.dg/noncompile/920923-1.c ICE)
PR c/20402
	* c-parser.c (c_parser_struct_or_union_specifier): Don't fall
	through into call to parser_xref_tag after parse error.
	(c_parser_struct_declaration): Consistently return NULL_TREE on
	error.

testsuite:
	* gcc.dg/noncompile/920923-1.c: Detail expected diagnostics for
	new parser.

From-SVN: r96363
2005-03-13 01:09:47 +00:00
Daniel Berlin
c75ab02281 In gcc/ada/ 2005-03-12 Daniel Berlin <dberlin@dberlin.org>
In gcc/ada/
2005-03-12  Daniel Berlin <dberlin@dberlin.org>

	* misc.c (gnat_post_options): Turn off structural
	aliasing for now.
In gcc/
2005-03-12  Daniel Berlin  <dberlin@dberlin.org>

	* tree-flow-inline.h (ref_contains_array_ref): New function.
	(lookup_subvars_for_var): Ditto.
	(get_subvars_for_var): Ditto.
	(var_can_have_subvars): Ditto.

	* tree-flow.h (mem_tag_kind): Add STRUCT_FIELD.
	(struct subvar): New type.

	* tree-dfa.c (okay_component_ref_for_subvars): New function.

	* tree-optimize.c (init_tree_optimization_passes): Call
	pass_create_structure_vars.

	* tree-ssa-alias.c: Include vec.h.
	(init_alias_info): Don't auto-clear call clobbered on struct-field
	tags.
	(compute_flow_insensitive_aliasing): Handle subvars.
	(group_aliases): Handle STRUCT_FIELD aliases.
	(setup_pointers_and_addressables): Ditto.
	Don't mark variables non-addressable if they still have
	addressable subvars.
	Also mark subvars addressable when the real variable is marked
	addressable.
	(add_pointed_to_var): Try to prune the pointed-to set by only
	pointing to subvars when possible.
	Otherwise, make sure we set addresses_needed and pt_vars to
	properly include subvars.
	(bitpos_of_field): New function.
	(push_fields_onto_fieldstack): Ditto.
	(get_or_create_used_part_for): Ditto.
	(create_overlap_variables_for): Ditto.
	(find_used_portions): Ditto.
	(create_structure_vars): Ditto.
	(pass_create_structure_vars): New structure.

	* tree-ssa-operands.c (finalize_ssa_v_must_defs): Remove assert.
	(get_expr_operands): Handle subvars.  Also try to turn
	COMPONENT_REF accesses into must-defs now that we can accurately
	portray it.
	(note_addressable): Try to only mark as addressable those subvars
	we know a COMPONENT_REF touches.
	(overlap_subvar): New function.

	* tree-vect-analyze.c (vect_object_analysis): Add new parameter.
	Handle subvar storing.
	(vect_address_analysis): Update caller of vect_object_analysis.

	* tree-vect-transform.c (vect_create_data_ref_ptr): Copy subvars.

	* tree-vectorizer.h (struct _stmt_vec_info): Add subvars member.
	(STMT_VINFO_SUBVARS): New macro.

	* common.opts: add flag_tree_salias.

	* opts.c (decode_options): flag_tree_salias defaults to on.

	* doc/invoke.texi: Document fdump-tree-svars and -ftree-salias.

	* doc/tree-ssa.texi: Document structural alias analysis.

From-SVN: r96362
2005-03-13 00:46:07 +00:00
GCC Administrator
23845f0220 Daily bump.
From-SVN: r96360
2005-03-13 00:16:54 +00:00
Tobias Schlüter
c585afb363 Correct wrong date on ChangeLog entry
From-SVN: r96353
2005-03-12 22:48:48 +01:00
Tobias Schlüter
bae88af67e re PR fortran/20361 (-fmax-stack-var-size=N not working for equivalence)
fortran/
PR fortran/20361
* trans-array.c (gfc_stack_space_left): Remove unused variable.
(gfc_can_put_var_on_stack): Move to trans-decl.c, remove #if 0'ed
code.
* trans-array.h (gfc_stack_space_left, gfc_can_put_var_on_stack):
Remove declaration / prototype.
* trans-common.c (build_equiv_decl): Give union a name.  Check if
it can be put on the stack.
* trans-decl.c (gfc_stack_space_left): Move function here.
(gfc_build_qualified_array): Fix comment typo.
* trans.h (gfc_put_var_on_stack): Add prototype.

testsuite/
PR fortran/20361
* gfortran.dg/largeequiv_1.f90: New test.

From-SVN: r96352
2005-03-12 22:44:44 +01:00
Steven Bosscher
7d3bf067e9 tree-cfg.c (make_goto_expr_edges): Don't use error_mark_node.
* tree-cfg.c (make_goto_expr_edges): Don't use error_mark_node.
	* tree-ssa-dce.c (mark_stmt_necessary): Don't check for it.
	* tree-ssa-operands.c (get_expr_operands): Likewise.
	(get_expr_operands): Likewise for ERROR_MARK.

From-SVN: r96351
2005-03-12 20:53:19 +00:00
Kazu Hirata
f39b4c073a tree-ssa-live.c (create_ssa_var_map, [...]): Remove local variable snn.
* tree-ssa-live.c (create_ssa_var_map,
	calculate_live_on_entry): Remove local variable snn.

From-SVN: r96348
2005-03-12 18:38:17 +00:00
Kazu Hirata
fb2a57478d tree-inline.c (expand_call_inline): Remove local variable decl.
* tree-inline.c (expand_call_inline): Remove local variable
	decl.

From-SVN: r96347
2005-03-12 18:37:18 +00:00
Kazu Hirata
2b74282d70 tree-if-conv.c (tree_if_convert_cond_expr): Remove local variable new_cond.
* tree-if-conv.c (tree_if_convert_cond_expr): Remove local
	variable new_cond.
	(combine_blocks): Remove local variables exits and new_e.

From-SVN: r96346
2005-03-12 18:35:48 +00:00
Kazu Hirata
f7448d502c reg-stack.c (move_for_stack_reg): Remove local variable push_insn.
* reg-stack.c (move_for_stack_reg): Remove local variable
	push_insn.
	(compare_for_stack_reg): Remove local variable flags_user.
	(convert_regs_1): Remove local variable deleted.

From-SVN: r96345
2005-03-12 18:34:42 +00:00
Kazu Hirata
70e2829d25 gimplify.c (gimplify_expr): Remove local variables r0 and r1.
* gimplify.c (gimplify_expr): Remove local variables r0 and
	r1.

From-SVN: r96344
2005-03-12 18:33:25 +00:00
Kazu Hirata
9386194f13 c-decl.c (c_init_decl_processing): Remove local variables ptr_ftype_void and ptr_ftype_ptr.
* c-decl.c (c_init_decl_processing): Remove local variables
	ptr_ftype_void and ptr_ftype_ptr.

From-SVN: r96343
2005-03-12 18:32:26 +00:00
Kazu Hirata
fba0892110 builtins.c (fold_builtin_logarithm): Take decomposed arguments of CALL_EXPR.
* builtins.c (fold_builtin_logarithm): Take decomposed
	arguments of CALL_EXPR.
	(fold_builtin_1): Update a call to fold_builtin_logarithm.

From-SVN: r96342
2005-03-12 16:14:42 +00:00
Kazu Hirata
7cfb2e1049 builtins.c (fold_builtin_exponent): Take decomposed arguments of CALL_EXPR.
* builtins.c (fold_builtin_exponent): Take decomposed
	arguments of CALL_EXPR.
	(fold_builtin_1): Update a call to fold_builtin_exponent.

From-SVN: r96341
2005-03-12 16:13:41 +00:00
Andreas Tobler
703be24934 stacktrace.cc (GetCallerInfo): Return nothing in case of SJLJ_EXCEPTIONS is defined.
2005-03-12  Andreas Tobler  <a.tobler@schweiz.ch>

	* stacktrace.cc (GetCallerInfo): Return nothing in case of
	SJLJ_EXCEPTIONS is defined.

From-SVN: r96340
2005-03-12 17:00:38 +01:00
Per Bothner
7c6d34c729 decl-2.c: Add extra line breaks.
* gcc.dg/decl-2.c:  Add extra line breaks.  That way we can verify
	that diagnotics refer to correct token.
	* gcc.dg/unused-3.c: Likewise.

From-SVN: r96339
2005-03-12 07:40:35 -08:00
Kazu Hirata
7532884955 value-prof.c (mod_subtract_transform): Remove local variable value.
* value-prof.c (mod_subtract_transform): Remove local variable
	value.

From-SVN: r96338
2005-03-12 14:11:16 +00:00
Kazu Hirata
8b54274e86 tree-vect-transform.c (vect_get_new_vect_var): Remove local variable prefix_len.
* tree-vect-transform.c (vect_get_new_vect_var): Remove local
	variable prefix_len.

From-SVN: r96337
2005-03-12 14:09:23 +00:00
Kazu Hirata
84ceaf0682 tree-ssa-pre.c (compute_avail): Remove local variable val.
* tree-ssa-pre.c (compute_avail): Remove local variable val.
	(mark_operand_necessary): Remove local variable ver.

From-SVN: r96336
2005-03-12 14:07:53 +00:00
Kazu Hirata
a1c7f47157 tree-ssa-phiopt.c (tree_ssa_phiopt): Remove local variable removed_phis.
* tree-ssa-phiopt.c (tree_ssa_phiopt): Remove local variable
	removed_phis.

From-SVN: r96335
2005-03-12 14:06:31 +00:00
Kazu Hirata
84f464e53c tree-ssa.c (kill_redundant_phi_nodes): Remove local variable var.
* tree-ssa.c (kill_redundant_phi_nodes): Remove local variable
	var.

From-SVN: r96334
2005-03-12 14:04:33 +00:00
Geoffrey Keating
47e204910a Index: libcpp/ChangeLog
2005-03-12  Geoffrey Keating  <geoffk@apple.com>

	* directives.c (glue_header_name): Update call to cpp_spell_token.
	* internal.h (_cpp_interpret_identifier): New.
	* charset.c (_cpp_interpret_identifier): New.
	(_cpp_valid_ucn): Allow UCN version of '$'.
	* lex.c (lex_identifier): Add extra parameter to indicate if initial
	character was '$' or '\'.  Support identifiers with UCNs.
	(forms_identifier_p): Allow UCNs.
	(_cpp_lex_direct): Pass extra parameter to lex_identifier.
	(utf8_to_ucn): New.
	(cpp_spell_token): Add FORSTRING parameter.  Use it.
	(cpp_token_as_text): Update call to cpp_spell_token.
	(cpp_output_token): Write UCNs back out.
	(stringify_arg): Update call to cpp_spell_token.
	(paste_tokens): Likewise.
	(cpp_macro_definition): Likewise.
	* macro.c (stringify_arg): Likewise.
	(paste_tokens): Likewise.
	(cpp_macro_definition): Likewise.
	* include/cpplib.h: Add parameter to cpp_spell_token.

Index: gcc/ChangeLog
2005-03-12  Geoffrey Keating  <geoffk@apple.com>

	* c-lex.c (c_lex_with_flags): Add parameter to call to
	cpp_spell_token.

Index: gcc/testsuite/ChangeLog
2005-03-12  Geoffrey Keating  <geoffk@apple.com>

	* gcc.dg/ucnid-1.c: New.
	* gcc.dg/ucnid-2.c: New.
	* gcc.dg/ucnid-3.c: New.
	* gcc.dg/ucnid-4.c: New.
	* gcc.dg/ucnid-5.c: New.
	* gcc.dg/ucnid-6.c: New.
	* gcc.dg/cpp/ucnid-1.c: New.
	* gcc.dg/cpp/ucnid-2.c: New.
	* gcc.dg/cpp/ucnid-3.c: New.
	* g++.dg/other/ucnid-1.C: New.

From-SVN: r96333
2005-03-12 10:44:06 +00:00
Geoffrey Keating
5269bfe280 * gcc.dg/vmx/darwin-abi-3.c: Delete.
From-SVN: r96332
2005-03-12 10:26:56 +00:00
Per Bothner
9a2a5d3746 direct2.c: With new lexer changes...
* gcc.dg/cpp/direct2.c: With new lexer changes, error "before string
	constant" is now actually on same line as string constant.
	* gcc.dg/cpp/direct2s.c: Likewise.

From-SVN: r96331
2005-03-11 22:57:15 -08:00
Per Bothner
b68b68289b cp-tree.h (struct cp_declarator): New id_loc field.
* cp-tree.h (struct cp_declarator): New id_loc field.
	* cp/parser.c (cp_lexer_get_preprocessor_token): Set cp_token's
	location using c_lex_with_flags, instead of input_location.
	(cp_parser_direct_declarator): Set declarator's id_loc from
	cp_token's id_loc.

From-SVN: r96330
2005-03-11 22:39:31 -08:00
Per Bothner
6037d88d58 c-tree.h (struct c_declarator): New id_loc field.
* c-tree.h (struct c_declarator): New id_loc field.
	* c-pragma.h (c_lex_with_flags): Take position reference.
	* c-lex.c (c_lex_with_flags): Set passed-in location from cpp token,
	iff USE_MAPPED_LOCATION. (Type doesn't match otherwise.)
	(c_lex): Pass dummy location to c_lex_with_flags.
	* c-parser.c (c_lex_one_token): Set c_token's location using
	c_lex_with_flags, instead of input_location, which might be "ahead".
	(c_parser_direct_declarator): Set declarator's id_loc from
	c_token's id_loc.
	* c-decl.c (grokdeclarator): Set DECL_SOURCE_LOCATION from
	declarator's id_loc, rather than probably-imprecise input_location.
	(build_id_declarator): Initialize c_declarator's id_loc field.

From-SVN: r96329
2005-03-11 22:37:46 -08:00