1. 30 Mar, 2000 3 commits
  2. 29 Mar, 2000 26 commits
  3. 28 Mar, 2000 11 commits
    • parse-scan.y (pop_class_context): Reset `inner_qualifier_length' when negative… · acbedd7c
      parse-scan.y (pop_class_context): Reset `inner_qualifier_length' when negative *before* using it as an array index.
      
      2000-03-28  Alexandre Petit-Bianco  <apbianco@cygnus.com>
      
      	* parse-scan.y (pop_class_context): Reset `inner_qualifier_length'
      	when negative *before* using it as an array index.
      	* ChangeLog: Fixed typo.
      
      (Fixes the following bogus patch:
       http://gcc.gnu.org/ml/gcc-patches/2000-03/msg00937.html)
      
      From-SVN: r32793
      Alexandre Petit-Bianco committed
    • cppfiles.c (hash_IHASH): Just return i->hash. · 29a72a4f
      2000-03-28  Zack Weinberg  <zack@wolery.cumb.org>
      
      	* cppfiles.c (hash_IHASH): Just return i->hash.
      	(cpp_included): Set dummy.hash using _cpp_calc_hash.  Use
      	htab_find_with_hash.
      	(cpp_read_file): Likewise.
      	(find_include_file): Likewise.  Properly initialize
      	ih->nshort.  Share ih->name and ih->nshort if possible.
      	* cpphash.c (_cpp_calc_hash): New function.
      	(hash_HASHNODE): Just return h->hash.
      	(_cpp_lookup): Set dummy.hash using _cpp_calc_hash.  Use
      	htab_find_with_hash.
      	* cpphash.h: Prototype _cpp_calc_hash.
      	* cppinit.c (initialize_builtins): Provide a valid hash
      	to _cpp_make_hashnode, using _cpp_calc_hash.
      
      	* cpphash.c (collect_expansion): # is not a special character
      	in object-like macros.  In -traditional mode, /**/ is not
      	token paste at the beginning or end of the line.
      	* cpplib.c (do_include, do_import, do_include_next): If
      	parse_include fails, return immediately.
      
      From-SVN: r32792
      Zack Weinberg committed
    • sibcall.c (indentify_call_return_value): Find last call in the chain; Allow… · 1e9d75e8
      sibcall.c (indentify_call_return_value): Find last call in the chain; Allow stack adjustment after function call.
      
              * sibcall.c (indentify_call_return_value): Find last call in the chain;
              Allow stack adjustment after function call.
      
      From-SVN: r32791
      Jan Hubicka committed
    • com.c (ffecom_decl_field): Use DECL_ALIGN for a FIELD_DECL. · 8ba77681
      	* com.c (ffecom_decl_field): Use DECL_ALIGN for a FIELD_DECL.
      	(ffecom_init_0): Likewise.
      
      From-SVN: r32790
      Franz Sirl committed
    • Fix thinko in original version · 93ba21a6
      From-SVN: r32789
      Zack Weinberg committed
    • arm.md (return peepholes): Update to reflect the new call insn patterns. · 46406379
              * config/arm/arm.md (return peepholes): Update to reflect the new
              call insn patterns.
              * config/arm/arm.c (arm_volatile_func): Also check
              current_function_nothrow.
              (output_return_instruction, output_func_prologue): Use it.
              (arm_output_epilogue, arm_expand_prologue): Likewise.
      
      From-SVN: r32788
      Jason Merrill committed
    • Put RTTI entries at negative offsets in new ABI. · da3d4dfa
      	* class.c (dfs_build_vbase_offset_vtbl_entries): Put the first
      	vbase offset at index -3, not -1.
      	(build_vtabe_offset_vtbl_entries): Use unmarked_vtable_pathp, not
      	dfs_vtable_path_unmarked_real_bases_queue_p to walk bases.
      	(dfs_build_vcall_offset_vtbl_entries): Don't use skip_rtti_stuff.
      	(build_rtti_vtbl_entries): New function.
      	(set_rtti_entry): Remove.
      	(build_primary_vtable): Don't use it.
      	(build_secondary_vtable): Likewise.
      	(start_vtable): Remove.
      	(first_vfun_index): New function.
      	(set_vindex): Likewise.
      	(add_virtual_function): Don't call start_vtable.  Do call
      	set_vindex.
      	(set_primary_base): Rename parameter.
      	(determine_primary_base): Likewise.
      	(num_vfun_entries): Don't use skip_rtti_stuff.
      	(num_extra_vtbl_entries): Include RTTI information.
      	(build_vtbl_initializer): Use build_rtti_vtbl_entries.
      	(skip_rtti_stuff): Remove.
      	(dfs_modify_vtables): Don't use it.
      	(modify_all_vtables): Don't use start_vtable.  Do use set_vindex.
      	(layout_nonempty_base_or_field): Update size handling.
      	(create_vtable_ptr): Tweak.
      	(layout_class_type): Adjust parameter names.
      	(finish_struct_1): Simplify.
      	* cp-tree.h (CLASSTYPE_VSIZE): Tweak documentation.
      	(skip_rtti_stuff): Remove.
      	(first_vfun_index): New function.
      	(dfs_vtable_path_unmarked_real_bases_queue_p): Remove.
      	(dfs_vtable_path_marked_real_bases_queue_p): Remove.
      	(marked_vtable_pathp): Declare.
      	(unmarked_vtable_pathp): Likewise.
      	* error.c (dump_expr): Use first_vfun_index to calculate vtable
      	offsets.
      	* rtti.c (build_headof): Look for RTTI at negative offsets.
      	(get_tinfo_decl_dynamic): Likewise.
      	(tinfo_base_init): Don't take the address of the TINFO_VTABLE_DECL
      	here.
      	(create_pseudo_type_info): Do it here instead.  Adjust so that
      	vptr points at first virtual function.
      	* search.c (marked_vtable_pathp): Make it global.
      	(unmarked_vtable_pathp): Likewise.
      	(dfs_vtable_path_unmarked_real_bases_queue_p): Remove.
      	(dfs_vtable_path_marked_real_bases_queue_p): Likewise.
      	(dfs_get_pure_virtuals): Don't use skip_rtti_stuff.
      	(get_pure_virtuals): Likewise.
      	(expand_upcast_fixups): Likewise.
      	* tree.c (debug_binfo): Likewise.
      	* tinfo.cc (__dynamic_cast): Look for vtable_prefix at appropriate
      	negative offset.
      
      From-SVN: r32787
      Mark Mitchell committed
    • New test case · 65a0aad5
      From-SVN: r32786
      Mark Mitchell committed
    • New test cases · 02ff568a
      From-SVN: r32785
      Zack Weinberg committed
    • gcc.c (handle_braces): In {x*...} case, break out of loop if switch is found. · 1f58da7f
      	* gcc.c (handle_braces): In {x*...} case, break out of loop if
      	switch is found.
      
      From-SVN: r32784
      Tom Tromey committed
    • expr.c (store_constructor): SIZE now signed. · 13eb1f7f
      	* expr.c (store_constructor): SIZE now signed.
      	For EXPR_SIZE, don't evaluate size; just needed if constant.
      	* fold-const.c (fold): Fix a number of cases when folded tree is
      	wrong type.
      	* function.c (flush_addressof): Reenable.
      	* tree.h (flush_addressof): Likewise.
      	* toplev.c (independent_decode_option): Look at strings_processed.
      	* config/alpha/alpha.h (MINIMUM_ATOMIC_ALIGNMENT): Cast to unsigned.
      
      From-SVN: r32783
      Richard Kenner committed