+2010-08-29 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
+
+ * m4/mtype.m4 (upcase, hasmathfunc, mathfunc_macro): New macros.
+ * m4/fraction.m4: Use new macros to support quad-float types.
+ * m4/set_exponent.m4: Likewise.
+ * m4/spacing.m4: Likewise.
+ * m4/exponent.m4: Likewise.
+ * m4/nearest.m4: Likewise.
+ * m4/norm2.m4: Likewise.
+ * m4/bessel.m4: Likewise.
+ * m4/rrspacing.m4: Likewise.
+ * generated/bessel_r4.c:Regenerated.
+ * generated/bessel_r8.c: Regenerated.
+ * generated/bessel_r10.c: Regenerated.
+ * generated/bessel_r16.c: Regenerated.
+ * generated/exponent_r4.c: Regenerated.
+ * generated/exponent_r8.c: Regenerated.
+ * generated/exponent_r10.c: Regenerated.
+ * generated/exponent_r16.c: Regenerated.
+ * generated/fraction_r4.c: Regenerated.
+ * generated/fraction_r8.c: Regenerated.
+ * generated/fraction_r10.c: Regenerated.
+ * generated/fraction_r16.c: Regenerated.
+ * generated/nearest_r4.c: Regenerated.
+ * generated/nearest_r8.c: Regenerated.
+ * generated/nearest_r10.c: Regenerated.
+ * generated/nearest_r16.c: Regenerated.
+ * generated/norm2_r4.c: Regenerated.
+ * generated/norm2_r8.c: Regenerated.
+ * generated/norm2_r10.c: Regenerated.
+ * generated/norm2_r16.c: Regenerated.
+ * generated/rrspacing_r4.c: Regenerated.
+ * generated/rrspacing_r8.c: Regenerated.
+ * generated/rrspacing_r10.c: Regenerated.
+ * generated/rrspacing_r16.c: Regenerated.
+ * generated/set_exponent_r4.c: Regenerated.
+ * generated/set_exponent_r8.c: Regenerated.
+ * generated/set_exponent_r10.c: Regenerated.
+ * generated/set_exponent_r16.c: Regenerated.
+ * generated/spacing_r4.c: Regenerated.
+ * generated/spacing_r8.c: Regenerated.
+ * generated/spacing_r10.c: Regenerated.
+ * generated/spacing_r16.c: Regenerated.
+
+2010-08-28 Tobias Burnus <burnus@net-b.de>
+
+ * mk-kinds-h.sh: Disable REAL(16) if REAL(10) is available.
+
+2010-08-27 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/33197
+ * libgfortran/m4/ifunction.m4 (FINISH_ARRAY_FUNCTION,
+ ARRAY_FUNCTION): Allow expression after loop.
+ * libgfortran/m4/norm2.m4: New for _gfortran_norm2_r{4,8,10,16}.
+ * libgfortran/m4/parity.m4: New for _gfortran_parity_l{1,2,4,8,16}.
+ * libgfortran/gfortran.map: Add new functions.
+ * libgfortran/Makefile.am: Ditto.
+ * libgfortran/m4/minloc1.m4: Add empty argument for ARRAY_FUNCTION.
+ * libgfortran/m4/maxloc1.m4: Ditto.
+ * libgfortran/m4/all.m4: Ditto.
+ * libgfortran/m4/minval.m4: Ditto.
+ * libgfortran/m4/maxval.m4: Ditto.
+ * libgfortran/m4/count.m4: Ditto.
+ * libgfortran/m4/product.m4: Ditto.
+ * libgfortran/m4/any.m4: Ditto.
+ * Makefile.in: Regenerated.
+ * generated/minval_r8.c: Regenerated.
+ * generated/maxloc1_4_r8.c: Regenerated.
+ * generated/minloc1_16_r16.c: Regenerated.
+ * generated/norm2_r4.c: Regenerated.
+ * generated/sum_i8.c: Regenerated.
+ * generated/parity_l2.c: Regenerated.
+ * generated/any_l16.c: Regenerated.
+ * generated/maxval_i2.c: Regenerated.
+ * generated/any_l2.c: Regenerated.
+ * generated/product_r4.c: Regenerated.
+ * generated/maxloc1_8_i4.c: Regenerated.
+ * generated/parity_l16.c: Regenerated.
+ * generated/all_l1.c: Regenerated.
+ * generated/product_i2.c: Regenerated.
+ * generated/minloc1_8_r16.c: Regenerated.
+ * generated/maxloc1_8_r16.c: Regenerated.
+ * generated/sum_r16.c: Regenerated.
+ * generated/sum_i1.c: Regenerated.
+ * generated/minloc1_4_r8.c: Regenerated.
+ * generated/maxloc1_16_r16.c: Regenerated.
+ * generated/minloc1_16_i4.c: Regenerated.
+ * generated/maxloc1_16_i4.c: Regenerated.
+ * generated/maxval_r16.c: Regenerated.
+ * generated/product_c10.c: Regenerated.
+ * generated/minloc1_8_i4.c: Regenerated.
+ * generated/all_l2.c: Regenerated.
+ * generated/product_c4.c: Regenerated.
+ * generated/sum_r4.c: Regenerated.
+ * generated/all_l16.c: Regenerated.
+ * generated/minloc1_16_r10.c: Regenerated.
+ * generated/sum_i2.c: Regenerated.
+ * generated/maxloc1_8_r8.c: Regenerated.
+ * generated/minval_i16.c: Regenerated.
+ * generated/parity_l4.c: Regenerated.
+ * generated/maxval_i4.c: Regenerated.
+ * generated/any_l4.c: Regenerated.
+ * generated/minval_i8.c: Regenerated.
+ * generated/maxloc1_4_i8.c: Regenerated.
+ * generated/minloc1_4_i16.c: Regenerated.
+ * generated/maxloc1_4_i16.c: Regenerated.
+ * generated/minloc1_8_r10.c: Regenerated.
+ * generated/product_i4.c: Regenerated.
+ * generated/maxloc1_8_r10.c: Regenerated.
+ * generated/sum_c16.c: Regenerated.
+ * generated/minloc1_16_r8.c: Regenerated.
+ * generated/maxloc1_16_r8.c: Regenerated.
+ * generated/count_4_l.c: Regenerated.
+ * generated/sum_r10.c: Regenerated.
+ * generated/count_8_l.c: Regenerated.
+ * generated/sum_c4.c: Regenerated.
+ * generated/maxloc1_16_r10.c: Regenerated.
+ * generated/minloc1_8_r8.c: Regenerated.
+ * generated/maxval_r10.c: Regenerated.
+ * generated/minval_i1.c: Regenerated.
+ * generated/maxloc1_4_i1.c: Regenerated.
+ * generated/minloc1_4_i8.c: Regenerated.
+ * generated/product_i16.c: Regenerated.
+ * generated/all_l4.c: Regenerated.
+ * generated/norm2_r16.c: Regenerated.
+ * generated/minval_r4.c: Regenerated.
+ * generated/maxloc1_4_r4.c: Regenerated.
+ * generated/sum_i4.c: Regenerated.
+ * generated/maxval_r8.c: Regenerated.
+ * generated/norm2_r8.c: Regenerated.
+ * generated/minloc1_4_i1.c: Regenerated.
+ * generated/minval_r16.c: Regenerated.
+ * generated/minval_i2.c: Regenerated.
+ * generated/maxloc1_4_i2.c: Regenerated.
+ * generated/product_r8.c: Regenerated.
+ * generated/maxloc1_8_i8.c: Regenerated.
+ * generated/sum_c10.c: Regenerated.
+ * generated/minloc1_4_r16.c: Regenerated.
+ * generated/maxloc1_4_r16.c: Regenerated.
+ * generated/count_1_l.c: Regenerated.
+ * generated/minloc1_4_r4.c: Regenerated.
+ * generated/minloc1_16_i8.c: Regenerated.
+ * generated/maxloc1_16_i8.c: Regenerated.
+ * generated/minloc1_4_i2.c: Regenerated.
+ * generated/maxloc1_8_i1.c: Regenerated.
+ * generated/minloc1_8_i8.c: Regenerated.
+ * generated/product_r16.c: Regenerated.
+ * generated/product_c8.c: Regenerated.
+ * generated/sum_r8.c: Regenerated.
+ * generated/norm2_r10.c: Regenerated.
+ * generated/minloc1_16_i16.c: Regenerated.
+ * generated/maxloc1_8_r4.c: Regenerated.
+ * generated/minloc1_16_i1.c: Regenerated.
+ * generated/maxloc1_16_i1.c: Regenerated.
+ * generated/minval_r10.c: Regenerated.
+ * generated/count_16_l.c: Regenerated.
+ * generated/parity_l8.c: Regenerated.
+ * generated/minloc1_8_i1.c: Regenerated.
+ * generated/minval_i4.c: Regenerated.
+ * generated/maxloc1_4_i4.c: Regenerated.
+ * generated/maxloc1_8_i2.c: Regenerated.
+ * generated/maxval_i8.c: Regenerated.
+ * generated/any_l8.c: Regenerated.
+ * generated/minloc1_4_r10.c: Regenerated.
+ * generated/minloc1_8_i16.c: Regenerated.
+ * generated/maxloc1_4_r10.c: Regenerated.
+ * generated/maxloc1_8_i16.c: Regenerated.
+ * generated/minloc1_16_r4.c: Regenerated.
+ * generated/maxloc1_16_r4.c: Regenerated.
+ * generated/product_i8.c: Regenerated.
+ * generated/sum_i16.c: Regenerated.
+ * generated/count_2_l.c: Regenerated.
+ * generated/maxloc1_16_i16.c: Regenerated.
+ * generated/minloc1_8_r4.c: Regenerated.
+ * generated/sum_c8.c: Regenerated.
+ * generated/minloc1_16_i2.c: Regenerated.
+ * generated/maxloc1_16_i2.c: Regenerated.
+ * generated/parity_l1.c: Regenerated.
+ * generated/maxval_i16.c: Regenerated.
+ * generated/maxval_i1.c: Regenerated.
+ * generated/minloc1_4_i4.c: Regenerated.
+ * generated/any_l1.c: Regenerated.
+ * generated/minloc1_8_i2.c: Regenerated.
+ * generated/product_c16.c: Regenerated.
+ * generated/product_r10.c: Regenerated.
+ * generated/product_i1.c: Regenerated.
+ * generated/all_l8.c: Regenerated.
+ * generated/maxval_r4.c: Regenerated.
+
+2010-08-26 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * config/fpu-387.h (has_sse): Remove cw_sse, unused.
+ Use fixed-length asm.
+
+2010-08-23 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/45323
+ * io/write.c (nml_write_obj, namelist_write): Cast argument
+ of toupper to int.
+
+2010-08-21 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
+
+ * configure: Regenerate.
+
+2010-08-19 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/36158
+ PR fortran/33197
+ * m4/bessel.m4: Implement bessel_jn and bessel_yn.
+ * gfortran.map: Add the generated bessel_jn_r{4,8,10,16}
+ and bessel_yn_r{4,8,10,16}.
+ * Makefile.am: Add bessel.m4.
+ * Makefile.in: Regenerated.
+ * generated/bessel_r4.c: Generated.
+ * generated/bessel_r16.c: Generated.
+ * generated/bessel_r8.c: Generated.
+ * generated/bessel_r10.c: Generated.
+
+2010-08-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/45108
+ * io/list_read.c (namelist_read): If namelist reading fails, use
+ generate_error and then continue the read loop.
+
+2010-08-17 Jakub Jelinek <jakub@redhat.com>
+
+ PR fortran/45308
+ * intrinsics/date_and_time.c (date_and_time): Pass __{zone,time,date}_len
+ instead of {ZONE,TIME,DATE}_LEN as second argument to fstrcpy. Drop
+ asserts. Adjust comment to the F2003 wording from the F95 wording.
+
+2010-08-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/44931
+ * io/inquire.c (inquire_via_unit): Add special case for __MINGW32__ to
+ return special file names CONIN$, CONOUT$, and CONERR$.
+
+2010-08-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/45143
+ * io/format.c: Remove fnode storage structure definitions, moving these
+ to format.h. (parse_format_list): Add check for data descriptors,
+ taking care of nested formats. Adjust calling parameters to pass a
+ check flag. (parse_format): Likewise.
+ * io/format.h: Add structures moved from format.c.
+
+2010-08-02 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * io/unit.c (update_position): Don't update the position flag for
+ non-seekable files, check for stell() error.
+
+2010-08-01 Janne Blomqvist <jb@gcc.gnu.org>
+
+ * io/unix.c (file_exists): Use access(2) instead of stat(2) to
+ test file existence.
+ (fallback_access): Move up in file, implement F_OK.
+
+2010-07-31 David Edelsohn <edelsohn@gnu.org>
+
+ * io/inquire.c: Include io.h before string.h.
+
+2010-07-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/44931
+ * io/inquire.c (inquire_via_unit): Use ttyname to return actual device
+ file name for stdin, stdout, and stderr. If ttyname does not succeed
+ fall back to default names for these units. Include string.h to allow
+ using strlen function.
+ * unix.c: Remove typedef of unix_stream structure, move to unix.h.
+ * unix.h: Add typedef of unix_stream structure so that it is
+ accessible to inquire.c.
+
+2010-07-19 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/44953
+ * io/unix.c (mem_alloc_w4): Return gfc_char4_t instead of char type
+ pointer. (mem_write4): Remove cast to gfc_char4_t.
+ * io/transfer.c (write_block): Use a gfc_char4_t pointer.
+ (memset4): New helper function. (next_record_w): Use new helper
+ function rather than sset for internal units. Don't attempt to pad
+ with spaces if it is not needed.
+ * io/unix.h: Update prototype for mem_alloc_w4.
+ * io/write.c (memset4): Use gfc_char4_t pointer and chracter type.
+ Don't use multiply by 4 to compute offset. (memcpy4): Likewise.
+ (write_default_char4): Use a gfc_char4_t pointer and update memset4
+ and memcpy calls. (write_a): Likewise. (write_l): Likewise.
+ (write_boz): Likewise. (write_decimal): Likewise. (write_x): Likewise.
+ (write_char): Add support for character(kind=4) internal units that
+ was previously missed. (write_integer): Use a gfc_char4_t pointer and
+ update memset4 and memcpy calls. (write_character): Likewise.
+ (write_separator): Add support for character(kind=4) internal units
+ that was previously missed.
+ * write_float.def (output_float): Use a gfc_char4_t pointer and
+ update memset4 and memcpy calls. (write_infnan): Likewise.
+ (output_float_FMT_G_): Likewise.
+
+2010-07-16 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/37077
+ * io/read.c (read_default_char4): Add support for reading into a
+ kind-4 character variable from a character(kind=4) internal unit.
+ * io/io.h (read_block_form4): Add prototype.
+ * io/unit.c (get_internal_unit): Add call to fbuf_init.
+ (free_internal_unit): Add call to fbuf_destroy. (get_unit): Fix
+ whitespace.
+ * io/transfer.c (read_sf_internal): Use fbuf_alloc to allocate a string
+ to recieve the wide characters translated to single byte chracters.
+ (read_block_form): Fix whitespace. (read_block_form4): New function to
+ read from a character(kind=4) internal unit into a character(kind=4)
+ variable. (read_block_direct): Fix whitespace. (write_block): Fix
+ whitespace. (formatted_transfer_scalar_read): Likewise.
+ (formatted_transfer_scalar_write): Likewise.
+ * io/write.c (write_character): Add support for list directed write of
+ a kind=1 character string to a character(kind=4) internal unit.
+
+2010-07-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/44934
+ * io/file_pos.c (st_endfile): Correctly set unit flags for form.
+ * io/transfer.c (data_transfer_init): Fix indentation of whitespace.
+
+2010-07-12 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/37077
+ * io/read.c: Fix comment.
+ * io/io.h (is_char4_unit): New macro.
+ * io/unit.c (get_internal_unit): Call new function open_internal4.
+ * io/unix.c (mem_alloc_r4): New function. (mem_alloc_w4): New function.
+ (mem_read4): New function, temporary stub. (mem_write4): New function.
+ (open_internal4): New function to set stream pointers to use the new
+ mem functions.
+ * io/transfer.c (write_block): Use new mem_alloc_w4 to access internal
+ units of kind=4.
+ * io/unix.h: Add prototypes for open_internal4, mem_alloc_w4, and
+ mem_alloc_r4.
+ * io/write.c (memset4): New helper function. (memcpy4): New helper
+ function. (write_default_char4): Use new helper functions.
+ (write_a): Likewise. (write_l): Likewise. (write_boz): Likewise.
+ (write_decimal): Likewise. (write_x): Likewise.
+ (write_integer): Likewise.
+ * io/write_float.def (output_float): Add code blocks to handle internal
+ unit kind=4 output utilizing gfc_char4_t pointers. (write_infnan): Use
+ new helper functions. (OUTPUT_FLOAT_FMT_G): Update this macro likewise.
+
+2010-07-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * config/fpu-387.h [__sun__ && __svr4__] Include <signal.h>,
+ <ucontext.h>.
+ (sigill_caught): New.
+ (sigill_hdlr): New function
+ (has_sse) [__sun__ && __svr4__]: Check if SSE instruction causes
+ SIGILL.
+
+2010-07-11 Kai Tietz <kai.tietz@onevision.com>
+
+ PR libfortran/44698
+ * io/unix.c (flush_buf): Add _commit for WIN32.
+
+2010-06-28 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/43298
+ * list_read.c (parse_real): Do not pass (..) on for NAN(..).
+ * read.c (convert_real): Fix comment about NAN/INF.
+
+2010-07-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * configure.ac (gfortran_use_symver): Only check for Sun-style symbol
+ versioning on Solaris 2.
+ * configure: Regenerate.
+
+2010-07-02 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
+
+ * configure.ac: Check for Sun symbol versioning.
+ * configure: Regenerate.
+
+ * Makefile.am [LIBGFOR_USE_SYMVER]: Protect version_arg with
+ LIBGFOR_USE_SYMVER_GNU.
+ Add version_dep.
+ [LIBGFOR_USE_SYMVER_SUN]: Handle Sun symbol versioning.
+ [!LIBGFOR_USE_SYMVER]: Add version_dep.
+ (libgfortran_la_DEPENDENCIES): Set to $(version_dep).
+ * Makefile.in: Regenerate.
+
+2010-06-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR libfortran/43298
+ * io/read.c: Add code to parse and read Inf, Infinity, NaN, and Nan with
+ optional parenthesis.
+
+2010-06-28 Tobias Burnus <burnus@net-b.de>
+
+ PR fortran/43298
+ * list_read.c (parse_real, read_real): Support NAN(alphanum).
+
+2010-06-25 Tobias Burnus <burnus@net-b.de>
+
+ * intrinsics/selected_real_kind.f90
+ (_gfortran_selected_real_kind2008): Add function.
+ (_gfortran_selected_real_kind): Stub which calls
+ _gfortran_selected_real_kind2008.
+ * gfortran.map (GFORTRAN_1.4): Add
+ _gfortran_selected_real_kind2008.
+ * mk-srk-inc.sh: Save also RADIX.
+
+2010-06-25 Tobias Burnus <burnus@net-b.de>
+
+ * runtime/compile_options.c (init_compile_options): Update
+ compile_options.allow_std for GFC_STD_F2008_OBS.
+ * io/transfer.c (formatted_transfer_scalar_read,
+ formatted_transfer_scalar_write): Fix allow_std check.
+ * io/list_read.c (nml_parse_qualifier): Ditto.
+
2010-06-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/44477