Commit Graph

29120 Commits

Author SHA1 Message Date
Benjamin Kosnik
42d18a47a0 [multiple changes]
2000-07-05  brent verner  <brent@rcfile.org>

	* testsuite/27_io/ifstream_members.cc (test01): Add tests.
	* testsuite/27_io/ofstream_members.cc (test01): Add tests.
	* config/c_io_libio.cc (__basic_file::open): Unset
	~_IO_DELETE_DONT_CLOSE.

2000-07-05  Zack Weinberg  <zack@wolery.cumb.org>

        * bits/gslice_array.h, bits/indirect_array.h, bits/mask_array.h,
        bits/slice_array.h, bits/std_valarray.h, bits/valarray_meta.h:
        Do not paste anything after 'operator' keyword.

From-SVN: r34877
2000-07-05 23:59:02 +00:00
Tom Tromey
0267da6437 Make-lang.in (PARSE_DIR): New macro.
* Make-lang.in (PARSE_DIR): New macro.
	(PARSE_RELDIR): Likewise.
	(PARSE_C): Likewise.
	(PARSE_SCAN_C): Likewise.
	($(PARSE_C)): New target.
	($(PARSE_SCAN_C)): Likewise.
	(SET_BISON): New macro.
	(BISONFLAGS): Likewise.
	(JAVABISONFLAGS): Likewise.

From-SVN: r34876
2000-07-05 20:52:37 +00:00
Jason Merrill
ab78530579 call.c (joust): Don't complain about operator char *()' beating operator const char *() const'.
* call.c (joust): Don't complain about `operator char *()' beating
        `operator const char *() const'.

From-SVN: r34875
2000-07-05 16:04:49 -04:00
Donn Terry
a1337b40ca [multiple changes]
2000-07-03  Donn Terry  (donnte@microsoft.com)
        * libU77/aclocal.m4: check for 2 argument gettimeofday without
	struct timezone

2000-06-21  Zack Weinberg  <zack@wolery.cumb.org>

From-SVN: r34874
2000-07-05 19:24:53 +00:00
Zack Weinberg
bfa697a954 ident.c: Don't expect #ident strings in the assembly output.
* gcc.dg/cpp/ident.c: Don't expect #ident strings in the
	assembly output.

From-SVN: r34873
2000-07-05 18:17:23 +00:00
Zack Weinberg
385d061bfe * cpplib.c (_cpp_parse_assertion): Fix buffer overrun.
From-SVN: r34872
2000-07-05 18:12:42 +00:00
Jeff Law
dca888c43e Daily bump.
From-SVN: r34871
2000-07-05 01:45:07 -06:00
Zack Weinberg
c71f835b25 cpplex.c: Don't include sys/mman.h.
toplevel:
	* cpplex.c: Don't include sys/mman.h.
	(cpp_push_buffer, cpp_pop_buffer): Moved to cpplib.c.

	* cpplib.c: Include sys/mman.h and obstack.h.
	(cpp_push_buffer): Moved from cpplex.c; allocate buffers on an
	obstack.
	(cpp_pop_buffer): Moved from cpplex.c; free buffers from an obstack.
	(_cpp_unwind_if_stack): Now static, unwind_if_stack.  Don't
	bother freeing if stack entries (they will be freed with their buffer).
	(do_endif): Free if stack entries from the buffer obstack.
	(push_conditional): Allocate if stack entries from the buffer obstack.

	(find_answer): Rename to _cpp_find_answer.
	(do_assert, do_unassert): Update.

	* cpphash.h: Update prototypes.
	(xobnew): New convenience macro.
	* cpplib.h (struct cpp_reader): Add hash_ob and buffer_ob fields.
	Update comments.
	(struct cpp_hashnode): Remove disabled field.

	* cppinit.c: Don't include hashtab.h or splay-tree.h.
	(report_missing_guard): Moved to cppfiles.c.
	(cpp_reader_init): Call cpp_init_stacks, cpp_init_macros,
	cpp_init_includes.
	(cpp_cleanup): Call cpp_cleanup_stacks, cpp_cleanup_macros,
	cpp_cleanup_includes.  Don't destroy hashtab or
	all_include_files here.
	(cpp_finish): Use _cpp_report_missing_guards.

	* cppfiles.c (report_missing_guard): Moved from cppinit.c.
	(_cpp_init_include_table): Rename _cpp_init_includes.
	(_cpp_cleanup_includes, _cpp_report_missing_guards): New.

	* cppexp.c (parse_assertion): Update for new name of
	find_answer.

	* Makefile.in (cpplib.o, cpphash.o, cppinit.o): Update deps.

	* cpplib.c (do_ident): s/VSPACE/EOF/

testsuite:
	* gcc.dg/cpp/ident.c: New test.

From-SVN: r34870
2000-07-05 05:33:57 +00:00
Bryce McKinlay
1bbee75bcc gjavah.c (HANDLE_METHOD): Call print_method_info with a NULL stream argument on the first pass for CNI as...
* gjavah.c (HANDLE_METHOD): Call print_method_info with a NULL
	stream argument on the first pass for CNI as well as JNI.
        (print_method_info): Set up method name on the first pass only.

From-SVN: r34869
2000-07-05 02:13:03 +01:00
Neil Booth
043afb2a08 cpplex.c: Fix trigraph replacement within strings.
* cpplex.c: Fix trigraph replacement within strings.
	* gcc.dg/cpp/lexident.c, gcc.dg/cpp/lexnum.c,
	  gcc.dg/cpp/lexstrng.c: New tests.

From-SVN: r34868
2000-07-04 22:26:16 +00:00
Neil Booth
d2c1325af0 macro1.c: Add more macro expansion tests.
* gcc.dg/cpp/macro1.c: Add more macro expansion tests.
	* gcc.dg/cpp/strify2.c: Same.

From-SVN: r34867
2000-07-04 11:51:43 +00:00
Kaveh R. Ghazi
0a336522af aix.h (ASM_GENERATE_INTERNAL_LABEL): Fix format specifier.
* rs6000/aix.h (ASM_GENERATE_INTERNAL_LABEL): Fix format specifier.

	* xcoffout.c (assign_type_number): Constify.
	(xcoffout_source_file): Add static prototype.  Don't needlessly
	cast away const-ness.

From-SVN: r34866
2000-07-04 11:14:13 +00:00
Denis Chertykov
55f972a449 avr.h (MASK_*): Define bits for target_flags.
* config/avr/avr.h (MASK_*): Define bits for target_flags.
	(TARGET_SWITCHES): Mark help strings for translation.
	Add new -mpack-args and -menhanced switches.
	(TARGET_OPTIONS): Mark help strings for translation.
	(progmem_section): Add section attributes.

From-SVN: r34865
2000-07-04 15:01:50 +04:00
Jason Merrill
60b5594752 * frame.h (frame_state): Move base_offset to end.
From-SVN: r34864
2000-07-04 03:55:39 -04:00
Jason Merrill
90418208f9 repo.c (repo_get_id): Handle the case where a class with virtual bases has a null TYPE_BINFO_VTABLE.
* repo.c (repo_get_id): Handle the case where a class with virtual
        bases has a null TYPE_BINFO_VTABLE.

        * parse.y (member_init): Just pass in the type.
        * init.c (expand_member_init): Handle getting a type.

        * decl.c (finish_function): Warn if a function has no return
        statement.
        Suggested by Andrew Koenig.
        * typeck.c (check_return_expr): Do set current_function_returns_value
        if we got an error_mark_node.

From-SVN: r34863
2000-07-04 03:47:11 -04:00
Jeff Law
692e9bd5d0 Daily bump.
From-SVN: r34862
2000-07-04 01:45:41 -06:00
Clinton Popetz
d4c683762a * calls.c (emit_library_call_value_1): Revert previous change.
From-SVN: r34861
2000-07-03 22:30:22 -04:00
Benjamin Kosnik
f22ad9d09e [multiple changes]
2000-07-03  scott snyder  <snyder@fnal.gov>

        * bits/locale_facets.tcc (_M_extract): Only figure out the base
        from the input if base == 0.
        * testsuite/27_io/istream_extractor_arith.cc: Test reading a
        number with a leading `0' in hex mode.

	* shadow/bits/std_cmath.h: Fix typo in _GLIBCPP_HAVE_CEILL test.

        * mkinclosure: Change `==' to `=' in test.

2000-07-03  Chip Salzenberg  <chip@valinux.com>

        * src/Makefile.am (libio_headers): _G_config.h is found in srcdir,
        not builddir.
        * src/Makefile.in: Regenerate.

From-SVN: r34860
2000-07-04 02:24:54 +00:00
Zack Weinberg
041c31944c top level:
2000-07-03  Zack Weinberg  <zack@wolery.cumb.org>

	* fix-header.c (struct partial_proto): Remove unnecessary fields.
	(recognized_extern, recognized_function, read_scan_file):
	Update for new scheme.
	(check_protection): It's still a multiple include guard even
	if it doesn't always trigger.
	* scan-decls.c (skip_to_closing_brace, scan_decls): Update for
	new scheme.
	* scan.h: Declare struct cpp_token.  Update prototypes.

2000-07-03  Neil Booth  <neilb@earthling.net>
	    Zack Weinberg  <zack@wolery.cumb.org>

	Complete overhaul of the lexer and macro expander.

	* cpphash.c (object_defn, funct_defn, push_macro_expansion,
	arg, arglist, argdata, reflist, collect_objlike_expansion,
	collect_funlike_expansion, collect_params,
	warn_trad_stringify, trad_stringify, duplicate_arg_p, add_pat,
	unsafe_chars, macarg, compare_defs, special_symbol,
	scan_arguments, stringify, funlike_macroexpand,
	_cpp_quote_string, monthnames): Delete.
	(cpp_lookup, _cpp_free_definition, dump_funlike_macro,
	_cpp_create_definition, _cpp_dump_definition,
	dump_hash_helper): Adjust.
	(find_param, count_params, parse_define, var_args_str,
	check_macro_redefinition, save_expansion): New.

	* cpplex.c (skip_block_comment, skip_line_comment, parse_name,
        parse_string, output_line_command, trigraph_replace,
        lex_line, cpp_push_buffer, cpp_pop_buffer, cpp_output_tokens,
        cpp_scan_buffer_nooutput, cpp_scan_buffer, cpp_free_toklist,
        cpp_idcmp, _cpp_get_directive_token, _cpp_init_input_buffer,
	_cpp_skip_rest_of_line): Modify.

        (maybe_macroexpand, skip_comment, copy_comment, skip_string,
	find_position, null_warning, bump_column, expand_name_space,
	pedantic_whitespace, _cpp_output_list, _cpp_slice_toklist,
	_cpp_squeeze_toklist, _cpp_scan_until, _cpp_skip_hspace,
	_cpp_parse_name, _cpp_lex_token, cpp_get_non_space_token,
	_cpp_prescan): Delete.

	(dump_param_spelling, process_directive, lex_next,
        is_macro_disabled, stringify_arg, expand_context_stack,
        output_token, make_string_token, alloc_number_token,
        special_symbol, duplicate_token, maybe_paste_with_next,
        can_paste, prevent_macro_expansion, restore_macro_expansion,
        get_temp_token, release_temp_tokens, quote_string,
        token_names, token_spellings, _cpp_expand_name_space,
        _cpp_glue_header_name, _cpp_reserve_name_space,
        digraph_spellings, trigraph_ok, skip_whitespace, save_comment,
        placemarker_token, eof_token, cpp_context, macro_args,
        get_raw_token, parse_arg, parse_args, save_token,
        push_arg_context, push_macro_context, pop_context,
        do_pop_context, free_macro_args, _cpp_get_line,
        _cpp_run_directive): New.

	* cpplib.c (validate_else, parse_include, push_conditional,
	pass_thru_directive, read_line_number, parse_ifdef,
	detect_if_not_defined, _cpp_check_directive, do_define,
	do_undef, do_include, do_import, do_include_next, do_error,
	do_warning, do_ident, do_pragma, pragma_dispatch, gcc_pragmas,
	top_pragmas, do_pragma_gcc, do_pragma_implementation,
	do_pragma_poison, do_pragma_system_header,
	do_pragma_dependency, do_sccs, do_ifdef, do_ifndef, do_else,
	dl_elif, do_endif, _cpp_unwind_if_stack, do_assert,
	do_unassert, cpp_define, cpp_undef, cpp_assert, cpp_unassert,
	cpp_defined): Update for new scheme.
	(strtoul_for_line, get_define_node, dump_macro_name,
	_cpp_check_linemarker, _cpp_parse_assertion): New.
	(_cpp_handle_directive, do_pragma_default): Delete.

	* cpphash.h (struct predicate): Now struct answer.
	(enum spell_type, struct token_spelling, struct directive,
	directive_handler): New.
	Update prototypes.  Remove unused macros.
	* cpplib.h: Update prototypes.  Remove unused macros,
	structure definitions, and fields.

	* cpperror.c (print_containing_files, v_message): Adjust.
	* cppexp.c (parse_assertion, lex, parse_escape,
	_cpp_parse_expr): Adjust.
	* cppfiles.c (open_include_file, _cpp_execute_include,
	_cpp_compare_file_date, cpp_read_file, read_include_file):
	Adjust.
	* cppinit.c (dump_special_to_buffer): Delete.
	(append_include_chain, merge_include_chains, cpp_reader_init,
	cpp_cleanup, initialize_builtins, builtin_array, cpp_start_read,
	cpp_finish, handle_option, print_help): Adjust.
	* cppmain.c (main): Adjust.

testsuite:
2000-07-03  Zack Weinberg  <zack@wolery.cumb.org>

	* testsuite/gcc.dg/cpp/19951025-1.c: Adjust regexps.
	* testsuite/gcc.dg/cpp/19990703-1.c: Likewise.
	* testsuite/gcc.dg/cpp/20000625-1.c: Likewise.
	* testsuite/gcc.dg/cpp/20000625-2.c: Likewise.

	* testsuite/gcc.dg/cpp/macro1.c,
	testsuite/gcc.dg/cpp/paste1.c, testsuite/gcc.dg/cpp/paste2.c,
	testsuite/gcc.dg/cpp/paste3.c, testsuite/gcc.dg/cpp/paste4.c,
	testsuite/gcc.dg/cpp/strify1.c,
	testsuite/gcc.dg/cpp/strify2.c: New tests.

From-SVN: r34859
2000-07-04 01:58:21 +00:00
Benjamin Kosnik
4f647814ce std_memory.h: Revert.
2000-07-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* bits/std_memory.h: Revert.

From-SVN: r34858
2000-07-04 01:21:24 +00:00
Benjamin Kosnik
c14286b068 [multiple changes]
2000-07-03  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>

	* bits/std_memory.h: Revert.

2000-07-03  Brendan Kehoe  <brendan@zen.org>

	* bits/std_complex.h: Fix parens. Format.

From-SVN: r34857
2000-07-04 01:20:04 +00:00
Zack Weinberg
18fa319d7b cppspec.c (lang_specific_driver): Use double quotes in error message.
* cppspec.c (lang_specific_driver): Use double quotes in error
	message.

From-SVN: r34856
2000-07-04 00:01:11 +00:00
Clinton Popetz
73003b2faf calls.c (emit_library_call_value_1): Use valreg instead of hard_libcall_value.
* calls.c (emit_library_call_value_1): Use valreg instead
	of hard_libcall_value.

From-SVN: r34854
2000-07-03 18:06:20 -04:00
Tom Tromey
fa948ac381 PrintWriter.java (print): Call write(String), not print(String).
* java/io/PrintWriter.java (print): Call write(String), not
	print(String).  See PR libgcj/277.
	(print(String)): Use write, not out.write.

From-SVN: r34853
2000-07-03 21:03:52 +00:00
Geoff Keating
fb4d43485a rs6000.c (rs6000_emit_move): New function.
* config/rs6000/rs6000.c (rs6000_emit_move): New function.
* config/rs6000/rs6000-proto.h: Prototype rs6000_emit_move.
* config/rs6000/rs6000.md (movsi): Use rs6000_emit_move.
(movhi): Likewise.
(movqi): Likewise.
(movdf): Likewise.
(movsf): Likewise.
(movdi): Likewise.
(movti): Likewise.

From-SVN: r34852
2000-07-03 20:00:44 +00:00
Geoff Keating
3b5286d750 expmed.c (expand_mult_highpart): Use op1 instead of wide_op1 when mode instead of wider_mode is being used.
* expmed.c (expand_mult_highpart): Use op1 instead of wide_op1 when
mode instead of wider_mode is being used.

From-SVN: r34851
2000-07-03 19:33:09 +00:00
Jakub Jelinek
5e6d6bf072 i386.md (movstrictqi_xor): Use 'q' constraint instead of 'r'.
* config/i386/i386.md (movstrictqi_xor): Use 'q' constraint instead
	of 'r'. Use q_regs_operand.
	(andsi_1+2): Use q_regs_operand.

From-SVN: r34850
2000-07-03 20:31:59 +02:00
Jakub Jelinek
f46ad0764a builtins.c (get_memory_rtx): Always put into alias set 0.
* builtins.c (get_memory_rtx): Always put into alias set 0.

	* gcc.c-torture/execute/20000703-1.c: New test.

From-SVN: r34849
2000-07-03 20:28:34 +02:00
Nick Clifton
9dc79c6f47 Fix peepholes to prevent pre-/post- increment addressing from clobbering the
source/destination register.

From-SVN: r34848
2000-07-03 18:02:13 +00:00
Marek Michalkiewicz
c4984bad36 avr.c (out_adj_frame_ptr): Make "frame pointer change too big for -mtiny-stack" a warning, if larger than 63.
* config/avr/avr.c (out_adj_frame_ptr): Make "frame pointer
	change too big for -mtiny-stack" a warning, if larger than 63.
	(out_set_stack_ptr): Change the logic so -mno-interrupts is
	always safe to use on possible future devices.
	(function_prologue): Write SPH before SPL, for consistency.
	If interrupt_func_p true, we know we have enabled interrupts.
	(avr_num_arg_regs): New function.  Round up to even number of
	bytes if no -mpack-args or if calling a libgcc function.
	(function_arg, function_arg_advance): Use it.
	(output_movsisf, ashlsi3_out, ashrsi3_out, lshrsi3_out):
	Output "movw" if available.
	(out_tsthi, out_tstsi, ashlqi3_out, lshrqi3_out): Change uses
	of TEST_HARD_REG_CLASS macro to test_hard_reg_class function.
	(asm_output_section_name): Add blanks for consistent output.
	(encode_section_info): Set TREE_READONLY for progmem data to
	avoid gas warnings about changed section attributes.
	(avr_hard_regno_mode_ok): Force non-QImode data to start in
	even numbered registers on devices with "movw".
	* config/avr/avr.h (MASK_*): Define bits for target_flags.
	(TARGET_SWITCHES): Mark help strings for translation.
	Add new -mpack-args and -menhanced switches.
	(TARGET_OPTIONS): Mark help strings for translation.
	(progmem_section): Add section attributes.
	* config/avr/avr.md (*movhi, call_insn, call_value_insn):
	Output "movw" if available.
	(mulqi3, mulqihi3, umulqihi3, mulhi3, *tablejump_enh):
	New patterns.
	* config/avr/libgcc.S (_mulqi3, _divqi3): Update to the new
	call convention (arguments aligned on even registers).
	(_cleanup, _exit): Make weak symbols libc can override.

From-SVN: r34847
2000-07-03 20:51:38 +04:00
Nathan Sidwell
2e63772162 * g++.old-deja/g++.pt (lookup10.C): New test.
From-SVN: r34846
2000-07-03 15:44:29 +00:00
Nathan Sidwell
a1089a8e04 * decl2.c (push_decl_namespace): Push the original namespace.
From-SVN: r34845
2000-07-03 15:43:49 +00:00
Kaveh R. Ghazi
cb4b535dc2 fp-bit.h: New file.
* fp-bit.h: New file.

	* fp-bit.c: Move common code, prototypes, etc into fp-bit.h.
	Comment #endif statements.
	(__thenan_sf, __thenan_df): Add missing braces around initializer.

From-SVN: r34844
2000-07-03 15:06:12 +00:00
Nathan Sidwell
d9b531423e * g++.old-deja/g++.pt (typename25.C): New test.
From-SVN: r34843
2000-07-03 08:14:03 +00:00
Nathan Sidwell
1ddd4323a4 pt.c (instantiate_class_template): Set CLASSTYPE_VBASECLASSES.
* pt.c (instantiate_class_template): Set CLASSTYPE_VBASECLASSES.
	* semantics.c (begin_class_definition): Clear it.

From-SVN: r34842
2000-07-03 08:13:33 +00:00
Jeff Law
7a23a8df4e Daily bump.
From-SVN: r34841
2000-07-03 01:45:08 -06:00
Jeff Law
a2e90653d0 Fix typo in comment.
From-SVN: r34840
2000-07-03 00:50:29 -06:00
Jeffrey A Law
c66e8ae9da gcse.c (compute_pre_data): Compute ae_kill using other local properties instead of calling compute_ae_kill.
* gcse.c (compute_pre_data): Compute ae_kill using other local
        properties instead of calling compute_ae_kill.

From-SVN: r34839
2000-07-03 00:49:31 -06:00
Jeffrey A Law
657959caa1 alias.c (init_alias_analysis): Do not call prologue_epilogue_contains until after reload has completed.
* alias.c (init_alias_analysis): Do not call
        prologue_epilogue_contains until after reload has completed.

From-SVN: r34838
2000-07-03 00:33:03 -06:00
Benjamin Chelf
4cf88f570a c-common.h (genrtl_begin_compound_stmt): Remove declaration.
2000-07-02  Benjamin Chelf  <chelf@codesourcery.com>

	* c-common.h (genrtl_begin_compound_stmt): Remove declaration.
	(genrtl_finish_compound_stmt): Likewise.
	(genrtl_compound_stmt): Change to return void.

	* c-semantics.c (genrtl_begin_compound_stmt): Remove function and
	move code from here to ...
	(genrtl_compound_stmt): ... here.
	(genrtl_finish_compound_stmt): Remove.
	(expand_stmt): Add comment.

	* cp/cp-tree.h (genrtl_goto_stmt): Remove declaration.
	(genrtl_expr_stmt): Likewise.
	(genrtl_decl_stmt): Likewise.
	(genrtl_if_stmt): Likewise.
	(genrtl_while_stmt): Likewise.
	(genrtl_do_stmt): Likewise.
	(genrtl_return_stmt): Likewise.
	(genrtl_for_stmt): Likewise.
	(genrtl_break_stmt): Likewise.
	(genrtl_continue_stmt): Likewise.
	(genrtl_scope_stmt): Likewise.
	(genrtl_switch_stmt): Likewise.
	(genrtl_case_label): Likewise.
	(genrtl_begin_compound_stmt): Likewise.
	(genrtl_finish_compound_stmt): Likewise.
	(genrtl_compound_stmt): Likewise.
	(genrtl_asm_stmt): Likewise.

	* cp/init.c (begin_init_stmts): Remove call to
	genrtl_begin_compound_stmt.
	(finish_init_stmts): Remove call to genrtl_finish_compound_stmt.

	* cp/semantics.c (lang_expand_stmt): Changed call to
	genrtl_compound_stmt to ignore return value.

From-SVN: r34837
2000-07-02 20:55:23 -07:00
Zack Weinberg
cd9bedad01 * gcc.c-torture/compile/20000701-1.c: New test.
From-SVN: r34836
2000-07-02 20:57:33 +00:00
Zack Weinberg
baae9b65ed c-typeck.c (build_indirect_ref): Use COMPLETE_OR_VOID_TYPE_P and VOID_TYPE_P.
* c-typeck.c (build_indirect_ref): Use COMPLETE_OR_VOID_TYPE_P
	and VOID_TYPE_P.

From-SVN: r34835
2000-07-02 19:19:18 +00:00
Mark Mitchell
bc6e9a0a86 mangle.c (canonicalize_for_substitution): Return the canonical variant of a type.
* mangle.c (canonicalize_for_substitution): Return the canonical
	variant of a type.

From-SVN: r34834
2000-07-02 18:44:52 +00:00
Toon Moene
68bcd3163a Version.c: Bumped version number to 0.5.26.
2000-07-02  Toon Moene  <toon@moene.indiv.nluug.nl>

	* libF77/Version.c: Bumped version number to 0.5.26.
	* libI77/Version.c: Ditto.
	* libU77/Version.c: Ditto.

From-SVN: r34833
2000-07-02 15:07:29 +00:00
Toon Moene
27353dd2fe version.c: Bump version number.
2000-07-02  Toon Moene  <toon@moene.indiv.nluug.nl>

	* version.c: Bump version number.

From-SVN: r34832
2000-07-02 09:45:28 +00:00
Jakub Jelinek
fb753f88e9 cpplib.h (struct cpp_reader): New field include_depth.
* cpplib.h (struct cpp_reader): New field include_depth.
	(struct cpp_printer): Rename last_bsd to last_id.
	* cppfiles.c (read_include_file): Bump include_depth.
	* cpplex.c (cpp_pop_buffer): Decrement include_depth.
	(output_line_command): Output correct #line if a header
	is including itself and is not protected against multiple inclusion.
	Use include_depth instead of buffer_stack_depth, last_id instead of
	last_bsd.
	* cppinit.c (cpp_start_read): Initialize last_id instead of
	last_bsd.

From-SVN: r34831
2000-07-02 10:56:57 +02:00
Mark Mitchell
970d6386eb decl.c (duplicate_decls): Preserve DECL_ORIGINAL_TYPE for a TYPE_DECL.
* decl.c (duplicate_decls): Preserve DECL_ORIGINAL_TYPE for a
	TYPE_DECL.
	* typeck.c (commonparms): Remove obstack manipulations.

From-SVN: r34830
2000-07-02 08:07:55 +00:00
Jeff Law
9de09d7375 Daily bump.
From-SVN: r34829
2000-07-02 01:45:07 -06:00
Ben Chelf
99c00dde7e Fix typo
From-SVN: r34828
2000-07-01 22:27:48 -07:00
Ben Chelf
f2c5f623b0 Makefile.in (C_AND_OBJC_OBJS): Added c-semantics.o.
2000-07-01  Benjamin Chelf  <chelf@codesourcery.com>

	* Makefile.in (C_AND_OBJC_OBJS): Added c-semantics.o.
	(c-semantics.o): New target.

	* c-common.h (TREE_LANG_FLAG_?): Added documentation.
	(genrtl_do_pushlevel): Moved from cp/cp-tree.h.
	(genrtl_clear_out_block): Likewise.
	(genrtl_goto_stmt): Likewise.
	(genrtl_expr_stmt): Likewise.
	(genrtl_decl_stmt): Likewise.
	(genrtl_if_stmt): Likewise.
	(genrtl_while_stmt): Likewise.
	(genrtl_do_stmt): Likewise.
	(genrtl_return_stmt): Likewise.
	(genrtl_for_stmt): Likewise.
	(genrtl_break_stmt): Likewise.
	(genrtl_continue_stmt): Likewise.
	(genrtl_scope_stmt): Likewise.
	(genrtl_switch_stmt): Likewise.
	(genrtl_case_label): Likewise.
	(genrtl_begin_compound_stmt): Likewise.
	(gerntl_finish_compound_stmt): Likewise.
	(genrtl_compound_stmt): Likewise.
	(genrtl_asm_stmt): Likewise.
	(genrtl_decl_cleanup): Likewise.
	(DECL_ANON_UNION_ELEMS): Likewise.
	(emit_local_var): Likewise.
	(make_rtl_for_local_static): Likewise.
	(expand_cond): Likewise.
	(expand_stmt): Likewise.
	(c_expand_return): Likewise.
	(c_expand_start_case): Likewise.
	(do_case): Likewise.
	(COMPOUND_STMT_NO_SCOPE): Likewise.
	(c_expand_asm_operands): Likewise.
	(NEW_FOR_SCOPE_P): New macro.
	(expand_expr_stmt_fn): New type.

	(set_current_function_name_declared): Likewise.
	(current_function_name_declared): Likewise.
	(lang_expand_stmt): Likewise.
	(stmts_are_full_exprs_p): Likewise.
	(anon_aggr_type_p): Likewise.
	(lang_expand_expr_stmt): Likewise.
	(build_case_label): Likewise.

	* c-decl.c (lang_expand_expr_stmt): Initialize.
	(stmts_are_full_exprs_p): Define.
	(current_function_name_declared): Likewise.
	(do_case): Likewise.
	(lang_expand_stmt): Likewise.
	(set_current_function_name_declared): Likewise.
	(anon_aggr_type_p): Likewise.
	(build_case_label): Likewise.

	* c-semantics.c: New file.
	(expand_cond): Moved from cp/semantics.c.
	(genrtl_do_pushlevel): Likewise.
	(genrtl_clear_out_block): Likewise.
	(genrtl_goto_stmt): Likewise.
	(genrtl_expr_stmt): Likewise.
	(genrtl_decl_stmt): Likewise.
	(genrtl_if_stmt): Likewise.
	(genrtl_while_stmt): Likewise.
	(genrtl_do_stmt): Likewise.
	(genrtl_return_stmt): Likewise.
	(genrtl_for_stmt): Likewise.
	(genrtl_break_stmt): Likewise.
	(genrtl_continue_stmt): Likewise.
	(genrtl_scope_stmt): Likewise.
	(genrtl_switch_stmt): Likewise.
	(genrtl_case_label): Likewise.
	(genrtl_begin_compound_stmt): Likewise.
	(genrtl_finish_compound_stmt): Likewise.
	(genrtl_compound_stmt): Likewise.
	(genrtl_asm_stmt): Likewise.
	(genrtl_decl_cleanup): Likewise.
	(make_rtl_for_local_static): Moved from cp/decl.c.
	(emit_local_var): Likewise.
	(expand_stmt): Define.

	* c-tree.h: (c_expand_asm_operands): Moved to c-common.h.
	(c_expand_return): Likewise.
	(c_expand_start_case): Likewise.

        * cp/Make-lang.in (cc1plus$(exeext)): Added c-semantics.o.

	* cp/Makefile.in (OBJS): Added ../c-semantics.o.
	(OBJDEPS): Likewise.

	* cp/cp-tree.h (TREE_LANG_FLAG_?): Moved common documentation to
	../c-common.h.
	(struct stmt_tree): Added comment.
	(current_function_name_declared): Removed.
	(stmts_are_full_exprs_p): Likewise.
	(genrtl_do_pushlevel): Likewise.
	(genrtl_clear_out_block): Likewise.
	(COMPOUND_STMT_NO_SCOPE): Moved to ../c-common.h.
	(DECL_ANON_UNION_ELEMS): Likewise.
	(emit_local_var): Likewise.
	(make_rtl_for_local_static): Likewise.
	(do_case): Likewise.
	(expand_stmt): Likewise.
	(genrtl_decl_cleanup): Likewise.
	(c_expand_asm_operands): Likewise.
	(c_expand_return): Likewise.
	(c_expand_start_case): Likewise.

	* cp/decl.c (make_rtl_for_local_static): Moved to c-semantics.c.
	(emit_local_var): Likewise.
	(initialize_local_var): Change reference to
	stmts_are_full_exprs_p to call to stmts_are_full_exprs_p().
	Change reference to stmts_are_full_exprs_p to
	current_stmt_tree->stmts_are_full_exprs_p.
	(push_cp_function_context): Likewise.

	* cp/expect.c (expand_throw): Change reference to
	stmts_are_full_exprs_p.

	* cp/init.c (build_aggr_init): Change reference to
	stmts_are_full_exprs_p.
	(build_vec_init): Likewise.

	* cp/optimize.c (maybe_clone_body): Change reference to
	current_function_name_declared to
	cp_function_chain->name_declared.

	* cp/pt.c (instantiate_decl): Change reference to
	current_function_name_declared to
	cp_function_chain->name_declared.

	* cp/semantics.c (expand_cond): Moved declaration to c-common.h.
	(genrtl_do_pushlevel): Moved to c-semantics.c.
	(genrtl_clear_out_block): Likewise.
	(genrtl_goto_stmt): Likewise.
	(genrtl_expr_stmt): Likewise.
	(genrtl_decl_stmt): Likewise.
	(gerntl_if_stmt): Likewise.
	(genrtl_while_stmt): Likewise.
	(genrtl_do_stmt): Likewise.
	(genrtl_return_stmt): Likewise.
	(genrtl_for_stmt): Likewise.
	(genrtl_break_stmt): Likewise.
	(genrtl_continue_stmt): Likewise.
	(genrtl_scope_stmt): Likewise.
	(genrtl_switch_stmt): Likewise.
	(genrtl_case_label): Likewise.
	(genrtl_begin_compound_stmt): Likewise.
	(genrtl_finish_compound_stmt): Likewise.
	(genrtl_compound_stmt): Likewise.
	(genrtl_asm_stmt): Likewise.
	(genrtl_decl_cleanup): Likewise.
	(expand_cond): Likewise.
	(expand_stmt): Renamed to ...
	(lang_expand_stmt): ... this.
	(lang_expand_expr_stmt): Initialize.
	(set_current_function_name_declared): Likewise.
	(stmts_are_full_exprs_p): Likewise.
	(current_function_name_declared): Likewise.
	(anon_aggr_type_p): Likewise.
	(do_poplevel): Change reference to
	stmts_are_full_exprs_p to call to stmts_are_full_exprs_p().
	Change reference to stmts_are_full_exprs_p to
	current_stmt_tree->stmts_are_full_exprs_p.
	(add_tree): Likewise.
	(finish_expr_stmt): Likewise.
	(prep_stmt): Likewise.
	(lang_expand_stmt): Likewise.
	(begin_compound_stmt): Change reference to
	current_function_name_declared to
	cp_function_chain->name_declared and call to
	current_function_name_declared().
	(setup_vtbl_ptr): Likewise.
	(genrtl_do_poplevel): Removed.

From-SVN: r34827
2000-07-01 22:23:01 -07:00