g77 assumed array patch [was: fortran regression]

Jeffrey A Law law@cygnus.com
Thu Dec 18 23:19:00 GMT 1997


  In message < 19971215230724.05958@dot.cygnus.com >you write:
  > > my suggestion -- it's a trivial change in the g77 front end,
  > > but if someone can implement the back-end changes to cope with
  > > a NULL_TREE in the "upper" part of a build_range_type call.
  > 
  > The following patch implements this suggestion.
  > 
  > It compiles the null test case
  > 
  >       subroutine star(aap, noot)                
  >       dimension aap(*)                                        
  >       end                                       
[ ... ]

  > Mon Dec 15 22:46:19 1997  Richard Henderson  <rth@cygnus.com>
  > 
  > 	G77 ChangeLog:
  > 	* com.c (ffecom_sym_transform_): Assumed arrays have no upper bound.
  > 
  > 	GCC ChangeLog:
  > 	* tree.c (build_range_type): Allow creation of ranges with no maximum.
  > 	* dbxout.c (dbxout_range_type): Handle missing TYPE_MAX_VALUE.
  > 	* dwarf2out.c (add_subscript_info): Likewise.
  > 	* dwarfout.c (subscript_data_attribute, byte_size_attribute): Likewise.
  > 	* sdbout.c (plain_type_1): Likewise.
  > 	* stmt.c (pushcase_range, all_cases_count, node_has_high_bound):
  > 	Likewise.
  > 	* fold-const.c (int_const_binop, fold_convert, make_range, fold):
  > 	Likewise.
THanks.  I went ahead and installed this patch.  If we're missing a case
I'm sure we'll find out soon enough.

I do worry a little about the "hope debuggers can deal" issues with
an unspecified high bound.  Maybe we should set an artificial one if
some debuggers don't handle unspecified bounds correctly.

jeff



More information about the Gcc mailing list