OSDN Git Service

* gcc.dg/const-elim-1.c: Remove xfail for xtensa-*-*.
[pf3gnuchains/gcc-fork.git] / libgfortran / ChangeLog
index 2f31127..496da2e 100644 (file)
@@ -1,3 +1,435 @@
+2005-05-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR libfortran/20788
+       * io/unix.c (fd_to_stream): Add an avoid_mmap argument indicating
+       we don't we to mmap this stream. Use fd_open instead of mmap_open
+       in that case.
+       (open_external): Call fd_to_stream with avoid_mmap = 0.
+       (input_stream): Call fd_to_stream with avoid_mmap = 1.
+       (output_stream): Likewise.
+       (error_stream): Likewise.
+
+2005-05-09  Mike Stump  <mrs@apple.com>
+
+       * configure: Regenerate.
+
+2005-05-09  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR libfortran/19155
+       * io/read.c (read_f): Accept 'e', 'E', 'd' and 'D' as first
+       non-blank characters of a real number.
+
+2005-05-04  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR libfortran/21354
+       * m4/cshift1.m4: Change dimension of auxiliary arrays from
+       GFC_MAX_DIMENSION - 1 to GFC_MAX_DIMENSION.
+       * m4/eoshift1.m4: Likewise.
+       * m4/eoshift3.m4: Likewise.
+       * m4/ifunction.m4: Likewise.
+       * m4/in_pack.m4: Likewise.
+       * m4/in_unpack.m4: Likewise.
+       * intrinsics/cshift0.c: Likewise.
+       * intrinsics/eoshift0.c: Likewise.
+       * intrinsics/eoshift2.c: Likewise.
+       * intrinsics/random.c: Likewise.
+       * intrinsics/spread_generic.c: Likewise.
+       * intrinsics/stat.c: Likewise.
+       * generated/all_l4.c: Regenerated.
+       * generated/all_l8.c: Regenerated.
+       * generated/any_l4.c: Regenerated.
+       * generated/any_l8.c: Regenerated.
+       * generated/count_4_l4.c: Regenerated.
+       * generated/count_4_l8.c: Regenerated.
+       * generated/count_8_l4.c: Regenerated.
+       * generated/count_8_l8.c: Regenerated.
+       * generated/cshift1_4.c: Regenerated.
+       * generated/cshift1_8.c: Regenerated.
+       * generated/eoshift1_4.c: Regenerated.
+       * generated/eoshift1_8.c: Regenerated.
+       * generated/eoshift3_4.c: Regenerated.
+       * generated/eoshift3_8.c: Regenerated.
+       * generated/in_pack_i4.c: Regenerated.
+       * generated/in_pack_i8.c: Regenerated.
+       * generated/in_unpack_i4.c: Regenerated.
+       * generated/in_unpack_i8.c: Regenerated.
+       * generated/maxloc0_4_i4.c: Regenerated.
+       * generated/maxloc0_4_i8.c: Regenerated.
+       * generated/maxloc0_4_r4.c: Regenerated.
+       * generated/maxloc0_4_r8.c: Regenerated.
+       * generated/maxloc0_8_i4.c: Regenerated.
+       * generated/maxloc0_8_i8.c: Regenerated.
+       * generated/maxloc0_8_r4.c: Regenerated.
+       * generated/maxloc0_8_r8.c: Regenerated.
+       * generated/maxloc1_4_i4.c: Regenerated.
+       * generated/maxloc1_4_i8.c: Regenerated.
+       * generated/maxloc1_4_r4.c: Regenerated.
+       * generated/maxloc1_4_r8.c: Regenerated.
+       * generated/maxloc1_8_i4.c: Regenerated.
+       * generated/maxloc1_8_i8.c: Regenerated.
+       * generated/maxloc1_8_r4.c: Regenerated.
+       * generated/maxloc1_8_r8.c: Regenerated.
+       * generated/maxval_i4.c: Regenerated.
+       * generated/maxval_i8.c: Regenerated.
+       * generated/maxval_r4.c: Regenerated.
+       * generated/maxval_r8.c: Regenerated.
+       * generated/minloc0_4_i4.c: Regenerated.
+       * generated/minloc0_4_i8.c: Regenerated.
+       * generated/minloc0_4_r4.c: Regenerated.
+       * generated/minloc0_4_r8.c: Regenerated.
+       * generated/minloc0_8_i4.c: Regenerated.
+       * generated/minloc0_8_i8.c: Regenerated.
+       * generated/minloc0_8_r4.c: Regenerated.
+       * generated/minloc0_8_r8.c: Regenerated.
+       * generated/minloc1_4_i4.c: Regenerated.
+       * generated/minloc1_4_i8.c: Regenerated.
+       * generated/minloc1_4_r4.c: Regenerated.
+       * generated/minloc1_4_r8.c: Regenerated.
+       * generated/minloc1_8_i4.c: Regenerated.
+       * generated/minloc1_8_i8.c: Regenerated.
+       * generated/minloc1_8_r4.c: Regenerated.
+       * generated/minloc1_8_r8.c: Regenerated.
+       * generated/minval_i4.c: Regenerated.
+       * generated/minval_i8.c: Regenerated.
+       * generated/minval_r4.c: Regenerated.
+       * generated/minval_r8.c: Regenerated.
+       * generated/product_c4.c: Regenerated.
+       * generated/product_c8.c: Regenerated.
+       * generated/product_i4.c: Regenerated.
+       * generated/product_i8.c: Regenerated.
+       * generated/product_r4.c: Regenerated.
+       * generated/product_r8.c: Regenerated.
+       * generated/sum_c4.c: Regenerated.
+       * generated/sum_c8.c: Regenerated.
+       * generated/sum_i4.c: Regenerated.
+       * generated/sum_i8.c: Regenerated.
+       * generated/sum_r4.c: Regenerated.
+       * generated/sum_r8.c: Regenerated.
+
+2005-04-30  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR libfortran/18958
+       libgfortran.h:  Change typedef of index_type from size_t
+       to ssize_t.
+
+2005-04-30  Paul Thomas  <pault@gcc.gnu.org>
+
+       PR libfortran/18857
+       * generated/matmul_r8.c: Remove incorrect assertions.
+       * generated/matmul_c4.c: Regenerate
+       * generated/matmul_c8.c: Regenerate
+       * generated/matmul_i4.c: Regenerate
+       * generated/matmul_i8.c: Regenerate
+       * generated/matmul_r4.c: Regenerate
+       * generated/matmul_r8.c: Regenerate
+
+2005-04-29  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       * configure.ac: Check for ftruncate and chsize.
+       * io/unix.c (fd_truncate): Provide chsize as alternative to
+       ftruncate.
+       * config.h.in: Regenerate.
+       * configure: Regenerate.
+
+2004-04-29  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * intrinsics/rename.c: Add missing #includes.
+
+2004-04-28  Tobias Schl"uter  <tobias.schlueter@physik.uni-muenchen.de>
+
+       * AUTHORS, COPYING, INSTALL, NEWS, README: Remove.
+
+2005-04-26  David Edelsohn  <edelsohn@gnu.org>
+
+       PR libfortran/20930
+       * io/rewind.c (st_rewind): Flush the stream when resetting the mode
+       from WRITING to READING.
+
+2005-04-22  Paul Thomas  <pault@gcc.gnu.org>
+           Jerry DeLisle  <jvdelisle@verizon.net> 
+
+       * io/write.c (nml_write_obj): Provide 1 more byte for ext_name.
+       * io/list_read.c (nml_get_obj_data): Put extra brackets in get_mem
+       call for ext_name.  These fix the bug reported by Jerry DeLisle to
+       the fortran list and are based on his suggested fix.
+
+2005-04-22  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR libfortran/20074
+       PR libfortran/20436
+       PR libfortran/21108
+       * m4/reshape.m4 (reshape_`'rtype_kind):  rs, rex:  New
+       variables, to be used in calculation of return array sizes.
+       Populate return array descriptor if ret->data is NULL.
+       Fix condition for early return (it used to test something
+       undefined if order was used).
+       Remove duplicate check wether pad is used.
+       * intrinsics/reshape_generic.c (reshape_generic): Likewise.
+       Fix a few places where the wrong variables were set.
+       * generated/reshape_i4.c: Regenerated.
+       * generated/reshape_i8.c: Regenerated.
+
+2005-04-18  Paul  Thomas <pault@gcc.gnu.org>
+
+       * io/list_read.c (nml_touch_nodes, nml_read_obj,
+       nml_get_obj_data): Fix memory leaks in code for derived types.
+
+2005-04-11  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR libfortran/20950
+       * io/inquire.c (inquire_via_unit): Check for the gfc_unit being
+       NULL when setting ioparm.sequential.
+
+2005-04-17  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR libfortran/21075
+       * m4/reshape.m4 (reshape_`'rtype_kind):  Change dimension
+       of auxiliary arrays from GFC_MAX_DIMENSIONS - 1 to
+       GFC_MAX_DIMENSIONS.
+       * intrinsics/reshape_generic.c (reshape_generic):  Likewise.
+       * generated/reshape_i4.c:  Regenerated.
+       * generated/reshape_i8.c:  Regenerated.
+
+2005-04-17 Paul Thomas <pault@gcc.gnu.org>
+
+       * io/list_read.c (eat_separator): at_eol = 1 replaced
+       (zapped at some time?).
+
+2005-04-17 Paul Thomas <pault@gcc.gnu.org>
+
+       PR libgfortran/12884
+       PR libgfortran/17285
+       PR libgfortran/18122
+       PR libgfortran/18210
+       PR libgfortran/18392
+       PR libgfortran/18591
+       PR libgfortran/18879
+       * io/io.h (nml_ls): Declare.
+       (namelist_info): Modify for arrays.
+       * io/list_read.c (namelist_read): Reduced to call to new functions.
+       (match_namelist_name): Simplified.
+       (nml_query): Handles stdin queries ? and =?. New function.
+       (nml_get_obj_data): Parses object name. New function.
+       (touch_nml_nodes): Marks objects for read. New function.
+       (untouch_nml_nodes): Resets objects. New function.
+       (parse_qualifier): Parses and checks qualifiers. New function
+       (nml_read_object): Reads and stores object data. New function.
+       (eat_separator): No new_record on '/' in namelist.
+       (finish_separator): No new_record on '/' in namelist.
+       (read_logical): Error return for namelist.
+       (read_integer): Error return for namelist.
+       (read_complex): Error return for namelist.
+       (read_real): Error return for namelist.
+       * io/lock.c (library_end): Free extended namelist_info types.
+       * io/transfer.c (st_set_nml_var): Modified for arrays.
+       (st_set_nml_var_dim): Dimension descriptors. New function.
+       * io/write.c (namelist_write): Reduced to call to new functions.
+       (nml_write_obj): Writes output for object. New function.
+       (write_integer): Suppress leading blanks for repeat counts.
+       (write_int): Suppress leading blanks for repeat counts.
+       (write_float): Suppress leading blanks for repeat counts.
+       (output_float): Suppress leading blanks for repeat counts.
+
+2005-04-15  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR libfortran/18495
+       * intrinsics/spread_generic.c (spread):  Remove const from
+       return array descriptor.
+       New variables: rrank (rank of return array),  rs (for
+       calculating the size of the return array), srank (rank
+       of the source array).
+       Generate runtime error if the dim= argument is larger than
+       the rank of the return array.
+       Generate runtime error if the needed rank of the return
+       array is larger than 7.
+       If ret->data is null, populate the return array descriptor
+       and initialize the variables for the actual operation.
+       Otherwise, set ret->dim[0].stride to one if it is zero.
+       Change second, independent use of variable dim to srank.
+
+2005-04-12  Mike Stump  <mrs@apple.com>
+
+       * configure: Regenerate.
+
+2005-04-13  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR libfortran/19106
+       * m4/iforeach.c (name`'rtype_qual`_'atype_code):  Add TODO
+       that setting correct strides is a front end job.
+       (`m'name`'rtype_qual`_'atype_code):  Likewise.  If mask has
+       a lowest stride of 0, adjust to 1.
+       * m4/ifunction.c (name`'rtype_qual`_'atype_code):  Add TODO
+       that setting correct strides is a front end job.
+       (`m'name`'rtype_qual`_'atype_code):  Likewise.  If mask has
+       a lowest stride of 0, adjust to 1.
+       * maxloc0_4_i4.c: Regenerated
+       * maxloc0_4_i8.c: Regenerated
+       * maxloc0_4_r4.c: Regenerated
+       * maxloc0_4_r8.c: Regenerated
+       * maxloc0_8_i4.c: Regenerated
+       * maxloc0_8_i8.c: Regenerated
+       * maxloc0_8_r4.c: Regenerated
+       * maxloc0_8_r8.c: Regenerated
+       * maxloc1_4_i4.c: Regenerated
+       * maxloc1_4_i8.c: Regenerated
+       * maxloc1_4_r4.c: Regenerated
+       * maxloc1_4_r8.c: Regenerated
+       * maxloc1_8_i4.c: Regenerated
+       * maxloc1_8_i8.c: Regenerated
+       * maxloc1_8_r4.c: Regenerated
+       * maxloc1_8_r8.c: Regenerated
+       * maxval_i4.c: Regenerated
+       * maxval_i8.c: Regenerated
+       * maxval_r4.c: Regenerated
+       * maxval_r8.c: Regenerated
+       * minloc0_4_i4.c: Regenerated
+       * minloc0_4_i8.c: Regenerated
+       * minloc0_4_r4.c: Regenerated
+       * minloc0_4_r8.c: Regenerated
+       * minloc0_8_i4.c: Regenerated
+       * minloc0_8_i8.c: Regenerated
+       * minloc0_8_r4.c: Regenerated
+       * minloc0_8_r8.c: Regenerated
+       * minloc1_4_i4.c: Regenerated
+       * minloc1_4_i8.c: Regenerated
+       * minloc1_4_r4.c: Regenerated
+       * minloc1_4_r8.c: Regenerated
+       * minloc1_8_i4.c: Regenerated
+       * minloc1_8_i8.c: Regenerated
+       * minloc1_8_r4.c: Regenerated
+       * minloc1_8_r8.c: Regenerated
+       * minval_i4.c: Regenerated
+       * minval_i8.c: Regenerated
+       * minval_r4.c: Regenerated
+       * minval_r8.c: Regenerated
+       * product_c4.c: Regenerated
+       * product_c8.c: Regenerated
+       * product_i4.c: Regenerated
+       * product_i8.c: Regenerated
+       * product_r4.c: Regenerated
+       * product_r8.c: Regenerated
+       * sum_c4.c: Regenerated
+       * sum_c8.c: Regenerated
+       * sum_i4.c: Regenerated
+       * sum_i8.c: Regenerated
+       * sum_r4.c: Regenerated
+       * sum_r8.c: Regenerated
+
+2005-04-10  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
+
+       PR libfortran/20788
+       * runtime/environ.c (init_unsigned_integer): Function for
+       environment variables we want to be positive.
+       (init_integer): Function to allow negative environment
+       variables (e.g. for GFORTRAN_STDIN_UNIT).
+       
+2005-04-10  Thomas Koenig <Thomas.Koenig@online.de>
+
+       PR libfortran/17992
+       PR libfortran/19568
+       PR libfortran/19595
+       PR libfortran/20005
+       PR libfortran/20092
+       PR libfortran/20131
+       PR libfortran/20661
+       PR libfortran/20744
+       * io/transfer.c (top level): eor_condition: New static variable.
+       (read_sf): Remove unnecessary zeroing of buffer (there is enough
+       information in its length).
+       Return a string of length 0 (to be padded by caller) if EOR was
+       seen previously.
+       Remove erroneous special casing of EOR for standard input.
+       Set eor_condition for non-advancing I/O if an end of line was
+       detected.
+       Increment ioparm.size if necessary.
+       (formatted_transfer):  Skip the function if there is an EOR condition.
+       (data_transfer_init):  Initialize eor_condition to zero (false).
+       (next_record_r):  Clear sf_seen_eor if a \n has been seen already.
+       (finalize_transfer):  If there is an EOR condition, raise the error.
+
+2005-04-09  Bud Davis  <bdavis@gfortran.org>
+            Steven G. Kargl <kargls@comcast.net>
+
+       PR fortran/19872
+       * io/transfer.c (data_transfer_init): truncate an existing
+       file on the first write.
+
+2005-04-09  Thomas Koenig  <Thomas.Koenig@online.de>
+
+       PR libfortran/19106
+       PR libfortran/19014
+       * m4/ifunction.m4 (name`'rtype_qual`_'atype_code): ditto.
+       If retarray->data is NULL (i.e. the front end does not
+       know the rank and dimenson of the array), fill in its
+       properties and allocate memory.
+       Change the assertions about rank and dimension of retarray into
+       runtime errors and only check them for retarray->data != NULL.
+       Do the same for correcting the stride from 0 to 1 in retarray.
+       (`m'name`'rtype_qual`_'atype_code): Likewise.
+       * m4/iforeach.m4 (name`'rtype_qual`_'atype_code): Likewise.
+       Change assertion about rank of array to runtime error.
+       (`m'name`'rtype_qual`_'atype_code): Likewise.
+       * generated/all_l4.c: Regenerated.
+       * generated/all_l8.c: Regenerated.
+       * generated/any_l4.c: Regenerated.
+       * generated/any_l8.c: Regenerated.
+       * generated/count_4_l4.c: Regenerated.
+       * generated/count_4_l8.c: Regenerated.
+       * generated/count_8_l4.c: Regenerated.
+       * generated/count_8_l8.c: Regenerated.
+       * generated/maxloc0_4_i4.c: Regenerated.
+       * generated/maxloc0_4_i8.c: Regenerated.
+       * generated/maxloc0_4_r4.c: Regenerated.
+       * generated/maxloc0_4_r8.c: Regenerated.
+       * generated/maxloc0_8_i4.c: Regenerated.
+       * generated/maxloc0_8_i8.c: Regenerated.
+       * generated/maxloc0_8_r4.c: Regenerated.
+       * generated/maxloc0_8_r8.c: Regenerated.
+       * generated/maxloc1_4_i4.c: Regenerated.
+       * generated/maxloc1_4_i8.c: Regenerated.
+       * generated/maxloc1_4_r4.c: Regenerated.
+       * generated/maxloc1_4_r8.c: Regenerated.
+       * generated/maxloc1_8_i4.c: Regenerated.
+       * generated/maxloc1_8_i8.c: Regenerated.
+       * generated/maxloc1_8_r4.c: Regenerated.
+       * generated/maxloc1_8_r8.c: Regenerated.
+       * generated/maxval_i4.c: Regenerated.
+       * generated/maxval_i8.c: Regenerated.
+       * generated/maxval_r4.c: Regenerated.
+       * generated/maxval_r8.c: Regenerated.
+       * generated/minloc0_4_i4.c: Regenerated.
+       * generated/minloc0_4_i8.c: Regenerated.
+       * generated/minloc0_4_r4.c: Regenerated.
+       * generated/minloc0_4_r8.c: Regenerated.
+       * generated/minloc0_8_i4.c: Regenerated.
+       * generated/minloc0_8_i8.c: Regenerated.
+       * generated/minloc0_8_r4.c: Regenerated.
+       * generated/minloc0_8_r8.c: Regenerated.
+       * generated/minloc1_4_i4.c: Regenerated.
+       * generated/minloc1_4_i8.c: Regenerated.
+       * generated/minloc1_4_r4.c: Regenerated.
+       * generated/minloc1_4_r8.c: Regenerated.
+       * generated/minloc1_8_i4.c: Regenerated.
+       * generated/minloc1_8_i8.c: Regenerated.
+       * generated/minloc1_8_r4.c: Regenerated.
+       * generated/minloc1_8_r8.c: Regenerated.
+       * generated/minval_i4.c: Regenerated.
+       * generated/minval_i8.c: Regenerated.
+       * generated/minval_r4.c: Regenerated.
+       * generated/minval_r8.c: Regenerated.
+       * generated/product_c4.c: Regenerated.
+       * generated/product_c8.c: Regenerated.
+       * generated/product_i4.c: Regenerated.
+       * generated/product_i8.c: Regenerated.
+       * generated/product_r4.c: Regenerated.
+       * generated/product_r8.c: Regenerated.
+       * generated/sum_c4.c: Regenerated.
+       * generated/sum_c8.c: Regenerated.
+       * generated/sum_i4.c: Regenerated.
+       * generated/sum_i8.c: Regenerated.
+       * generated/sum_r4.c: Regenerated.
+       * generated/sum_r8.c: Regenerated.
+
 2005-04-09  Thomas Koenig <Thomas.Koenig@online.de>
 
        PR libfortran/20163