This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

C++ PATCH for better type-checking for arrays



This patch does several things:
  
  o Add new macros for using comptypes more conveniently.  (Rather
    than pasing an obscure numeric third argument, there are now
    handy macros (e.g., same_type_p) that do what their names 
    indicate.)

  o Fix type-comparison for arrays.  (In general, `int []' and `int
    [7]' are not the same type, although you may redeclare things
    that way.)
  
  o Disallows declarations of certain illegal multidimensional arrays,
    like `int a[7][]'. 

  o Fixes this obscure case, which used not to compile:

      template <class T>
      struct S : public S<T*> {};
      template <>
      struct S<int**> {};

      void g()
      {
	int S<int*>::*p;
	int S<int>::*q = p;
      }

    (This bug could only occur when a template class derived from
    another instance of itself.  I spotted this while reading the
    relevant code.  Yes, I do think up these kind of things for a
    living...)

  o In the process, fixes:
   
      g++.bugs/900321_01.C
      g++.bugs/900322_01.C
      g++.bugs/900520_02.C 
      g++.pt/sizeof2.C
      g++.pt/sizeof3.C
      
  o Breaks one semi-legal construct involving templates.  More on 
    this in a separate message since it is relevant to people who
    may not read this list.

-- 
Mark Mitchell 			mark@markmitchell.com
Mark Mitchell Consulting	http://www.markmitchell.com

1998-11-01  Mark Mitchell  <mark@markmitchell.com>

	* cp-tree.h (COMPARE_STRICT): New macro.
	(COMPARE_BASE): Likewise.
	(COMPARE_RELAXED): Likewise.
	(COMPARE_REDECLARATION): Likewise.
	(same_type_p): Likewise.
	(same_or_base_type_p): Likewise.
	* call.c (standard_conversion): Use them, in place of comptypes
	with numeric arguments.
	(reference_binding): Likewise.
	(convert_like): Likewise.
	(build_over_call): Likewise.
	(is_subseq): Likewise.
	(is_properly_derived_from): Likewise.
	(compare_ics): Likewise.
	(joust): Likewise.
	* class.c (delete_duplicate_fields_1): Likewise.
	(resolves_to_fixed_type_p): Likewise.
	(instantiate_type): Likewise.  Remove #if 0'd code.
	* decl.c (decls_match): Likewise.  Use COMPARE_REDECLARATION here.
	(pushdecl): Likewise.
	(lookup_name_real): Likewise.
	(grokdeclarator): Likewise.  Check for illegal array declarations.
	(grokparms): Likewise.
	(grok_op_properties): Likewise.
	* decl2.c (check_classfn): Likewise.
	* friend.c (is_friend): Likewise.
	(make_friend_class): Likewise.
	* init.c (expand_aggr_init): Likewise.
	(expand_vec_init): Likewise.
	* pt.c (is_member_template_class): Remove declaration.
	(is_specialization_of): Use COMPARE_* and new macros.
	(comp_template_parms): Likewise.
	(convert_nontype_argument): Likewise.
	(coerce_template_template_parms): Likewise.
	(template_args_equal): Likewise.
	(lookup_template_class): Likewise.
	(type_unification_real): Likewise.
	(unify): Likewise.
	(get_bindings_real): Likewise.
	* search.c (covariant_return_p): Likewise.
	(get_matching_virtual): Likewise.
	* sig.c (match_method_types): Likewise.
	* tree.c (vec_binfo_member): Likewise.
	(cp_tree_equal): Likewise.
	* typeck.c (common_type): Likewise.
	(comp_array_types): Likewise.  Get issues involving unknown array
	bounds right.
	(comptypes): Update comments.  Use new flags.
	(comp_target_types): Use new macros.
	(compparms): Likewise.
	(comp_target_parms): Likewise.
	(string_conv_p): Likewise.
	(build_component_ref): Likewise.
	(build_indirect_ref): Likewise.
	(build_conditional_expr): Likewise.
	(build_static_cast): Likewise.
	(build_reinterpret_cast): Likewise.
	(build_const_cast): Likewise.
	(build_modify_expr): Likewise.
	(convert_for_assignment): Likewise.
	(comp_ptr_ttypes_real): Likewise.
	(ptr_reasonably_similar): Likewise.
	(comp_ptr_ttypes_const): Likewise.
	
begin 600 diffs.gz
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
B1L:3#K"NV?OJCL:K\6ZE[;H"N5?=N"M,_#\5S%_NECX!````
`
end


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]