Tobias Burnus
6b12f000e0
libgfortran.h: Mark stop_numeric as noreturn.
...
2007-05-22 Tobias Burnus <burnus@net-b.de>
* libgfortran.h: Mark stop_numeric as noreturn.
From-SVN: r124962
2007-05-22 22:55:53 +02:00
Tobias Burnus
1f801ab788
re PR libfortran/31295 (Uninitialized variable in libgfortran's _gfortran_eoshift0_4)
...
2007-05-22 Tobias Burnus <burnus@net-b.de>
PR libgfortran/31295
* intrinsics/eoshift0.c (eoshift0): Silence uninitialized warning.
* intrinsics/eoshift2.c (eoshift2): Ditto.
From-SVN: r124948
2007-05-22 18:19:09 +02:00
Jerry DeLisle
c152efbb10
re PR fortran/31964 ([4.2, 4.1 only]ishftc fails with certain thrid argument)
...
2007-05-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/31964
* intrinsics/ishftc.c (ishftc4, ishftc8, ishftc16): Fix mask to handle
shift of bit-size number of bits.
From-SVN: r124846
2007-05-19 01:04:03 +00:00
Tobias Burnus
2d24f24b97
re PR fortran/31917 ([4.1 only] GFORTRAN_CONVERT_UNIT is ignored)
...
2007-05-14 Tobias Burnus <burnus@net-b.de>
PR fortran/31917
* runtime/environ.c (mark_range): Fix setting default convert unit.
From-SVN: r124787
2007-05-17 10:39:32 +02:00
Jerry DeLisle
d5638e6e67
re PR fortran/31922 ([4.2 only] Accessing uninitialized variable for print *, trim(blank_string))
...
2007-05-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/31922
* intrinsics/string_intrinsics.c (string_trim): Set result to null if
string length is zero.
From-SVN: r124754
2007-05-16 00:37:55 +00:00
Tobias Burnus
80bcbc8044
re PR libfortran/31915 (Failure with unf_io_convert_3.f90)
...
2007-05-15 Tobias Burnus <burnus@net-b.de>
PR libfortran/31915
* io/transfer.c (unformatted_read): Use proper size for real(10).
(unformatted_write): Ditto.
From-SVN: r124741
2007-05-15 12:16:46 +02:00
Francois-Xavier Coudert
1529b8d9be
re PR fortran/30723 (Freeing memory doesn't need to call a library function)
...
PR fortran/30723
* trans.h (gfor_fndecl_internal_malloc, gfor_fndecl_internal_malloc64,
gfor_fndecl_internal_free): Remove prototypes.
(gfor_fndecl_os_error, gfc_call_free, gfc_call_malloc): Add prototypes.
* trans.c (gfc_call_malloc, gfc_call_free): New functions.
* f95-lang.c (gfc_init_builtin_functions): Add __builtin_free
and __builtin_malloc builtins.
* trans-decl.c (gfor_fndecl_internal_malloc,
gfor_fndecl_internal_malloc64, gfor_fndecl_internal_free): Remove.
(gfor_fndecl_os_error): Add.
(gfc_build_builtin_function_decls): Don't create internal_malloc,
internal_malloc64 and internal_free library function declaration.
Create os_error library call function declaration.
* trans-array.c (gfc_trans_allocate_array_storage,
gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias,
gfc_conv_array_parameter, gfc_duplicate_allocatable): Use
gfc_call_malloc and gfc_call_free instead of building calls to
internal_malloc and internal_free.
* trans-expr.c (gfc_conv_string_tmp): Likewise.
* trans-stmt.c (gfc_do_allocate, gfc_trans_assign_need_temp,
gfc_trans_pointer_assign_need_temp, gfc_trans_forall_1,
gfc_trans_where_2: Likewise.
* trans-intrinsic.c (gfc_conv_intrinsic_ctime,
gfc_conv_intrinsic_fdate, gfc_conv_intrinsic_ttynam,
gfc_conv_intrinsic_array_transfer, gfc_conv_intrinsic_trim): Likewise.
* runtime/memory.c (internal_malloc, internal_malloc64,
internal_free): Remove.
* runtime/error.c (os_error): Export function.
* intrinsics/move_alloc.c: Include stdlib.h.
(move_alloc): Call free instead of internal_free.
(move_alloc_c): Wrap long lines.
* libgfortran.h (os_error): Export prototype.
(internal_free): Remove prototype.
* gfortran.map (GFORTRAN_1.0): Remove _gfortran_internal_free,
_gfortran_internal_malloc and _gfortran_internal_malloc64.
Add _gfortran_os_error.
From-SVN: r124721
2007-05-14 19:33:57 +00:00
Jerry DeLisle
d5f9d0802c
re PR libfortran/31880 ([4.2 only] silent data corruption in gfortran read statement)
...
2007-05-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/31880
* io/unix.c (fd_alloc_r_at): Fix calculation of physical offset.
From-SVN: r124588
2007-05-10 01:01:27 +00:00
Francois-Xavier Coudert
25a5e75613
re PR libfortran/31607 (CALL SYSTEM produces garbled output when writing to a buffered file)
...
PR libfortran/31607
* intrinsics/system.c (system_sub): Call flush_all_units.
* io/io.h (flush_all_units): Move prototype to libgfortran.h.
* libgfortran.h (flush_all_units): Add prototype.
From-SVN: r124510
2007-05-07 19:48:40 +00:00
Jerry DeLisle
cb13c28858
re PR fortran/31201 (Too large unit number generates wrong code)
...
2007-05-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/31201
* runtime/error.c (runtime_error_at): New function.
(generate_error): Export this function.
* gfortran.map: Add _gfortran_generate_error and
_gfortran_runtime_error_at.
* libgfortran.h: Add comment to reference error codes in front end.
(library_start): Locate prototype with library_end macro and add
a new comment. Add prototype for runtime_error_at. Export prototype for
generate_error.
* io/lock.c (library_start): Fix check for error condition.
* io/transfer.c (data_transfer_init): Add library check.
From-SVN: r124479
2007-05-06 22:28:31 +00:00
Daniel Franke
134b401077
Fix typo in PR numbers 22539 <> 22359.
...
From-SVN: r124441
2007-05-04 14:21:48 -04:00
Daniel Franke
dcdc26dfd5
re PR target/22539 (Internal compiler error with maximum sized array)
...
gcc/fortran:
2007-05-04 Daniel Franke <franke.daniel@gmail.com>
PR fortran/22539
* intrinsic.c (add_subroutines): Added FSEEK.
* intrinsic.h (gfc_resolve_fseek_sub, gfc_check_fseek_sub): New.
* iresolve.c (gfc_resolve_fseek_sub): New.
* check.c (gfc_check_fseek_sub): New.
* intrinsic.texi (FSEEK): Updated.
gcc/testsuite:
2007-05-01 Daniel Franke <franke.daniel@gmail.com>
PR fortran/22539
* gfortran.dg/fseek.f90: New test.
libgfortran:
2007-05-04 Daniel Franke <franke.daniel@gmail.com>
PR fortran/22539
* io/intrinsics.c (fseek_sub): New.
* io/unix.c (fd_fseek): Change logical and physical offsets only
if seek succeeds.
* gfortran.map (fseek_sub): New.
From-SVN: r124437
2007-05-04 14:02:18 -04:00
Francois-Xavier Coudert
e50443368c
re PR libfortran/31210 (I/O of string with (non-constant) zero length)
...
PR libfortran/31210
* io/transfer.c (transfer_character): Avoid passing a NULL
pointer as source to the transfer routines, if the string length
is zero.
From-SVN: r124428
2007-05-04 15:14:07 +00:00
Jerry DeLisle
d10fb73e91
re PR libfortran/31501 (libgfortran internal unit I/O performance issues)
...
2007-04-28 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/31501
* io/list_read.c (next_char): Fix whitespace.
* io/io.h: Remove prototypes and define macros for is_array_io,
is_stream_io, and is_internal_unit.
* io/unit.c (is_array_io), (is_internal_unit), (is_stream_io): Delete
these functions.
* io/transfer.c (read_sf): Change handling of internal_unit to make a
single call to salloc_r and use memcpy to transfer the data.
From-SVN: r124266
2007-04-28 23:23:35 +00:00
Jerry DeLisle
16d962d92c
re PR libfortran/31532 (INQUIRE(...,POSITION=...) not standard conforming)
...
2007-04-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/31532
* io/file_pos.c (st_backspace): Set flags.position for end of file
condition and use new function update_position.
(st_endfile): Use new function update_position.
* io/io.h: Add prototype for new function.
* io/inquire.c (inquire_via_unit): If not direct access, set NEXTREC
to zero.
* io/unit.c (update_position): New function to update position info
used by inquire.
* io/transfer.c (next_record): Fix typo and use new function.
From-SVN: r124252
2007-04-28 02:03:21 +00:00
François-Xavier Coudert
6422c11230
re PR libfortran/31299 (Use getpwuid(geteuid()) instead of getlogin() for GETLOG())
...
PR libfortran/31299
* intrinsics/getlog.c: Use getpwuid and geteuid instead of
getlogin if they are available.
* configure.ac: Add checks for getpwuid and geteuid.
* configure: Regenerate.
* config.h.in: Regenerate.
From-SVN: r124143
2007-04-25 07:36:20 +00:00
Janne Blomqvist
78511f8b0d
configure: Regenerate using autoconf 2.59.
...
2007-04-25 Janne Blomqvist <jb@gcc.gnu.org>
* configure: Regenerate using autoconf 2.59.
* Makefile.in: Likewise.
* config.h.in: Likewise.
From-SVN: r124142
2007-04-25 10:25:09 +03:00
Janne Blomqvist
c0e7e2bf13
re PR libfortran/27740 (libgfortran should use versioned symbols)
...
2007-04-24 Janne Blomqvist <jb@gcc.gnu.org>
PR fortran/27740
* configure.ac: New test to determine if symbol versioning is
supported.
* Makefile.am: Use result of above test to add appropriate linker
flags.
* gfortran.map: New file.
* configure: Regenerated.
* Makefile.in: Regenerated.
* config.h.in: Regenerated.
From-SVN: r124098
2007-04-24 12:08:52 +03:00
Thomas Koenig
e08e57d0c5
re PR fortran/31618 ([4.2, 4.1 only] backspace intrinsic is not working on an unformatted file)
...
2007-04-23 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/31618
* io/transfer.c (read_block_direct): Instead of calling us_read,
set dtp->u.p.current_unit->current_record = 0 so that pre_position
will read the record marker.
(data_transfer_init): For different error conditions, call
generate_error, then return.
2007-04-23 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/31618
* gfortran.dg/backspace_8.f: New test case.
From-SVN: r124079
2007-04-23 19:43:54 +00:00
Francois-Xavier Coudert
a777d6e967
main.c (please_free_exe_path_when_done): New variable.
...
* runtime/main.c (please_free_exe_path_when_done): New variable.
(store_exe_path): Initialize character buffer, and mark whether
exe_path should be free'd by the library destructor function.
(cleanup): Only free exe_path if needed.
From-SVN: r123969
2007-04-19 11:01:15 +00:00
François-Xavier Coudert
383862e812
* ChangeLog: Forgot to include Tobias in the authors.
...
From-SVN: r123945
2007-04-18 08:54:40 +00:00
François-Xavier Coudert
c6e75626c9
re PR libfortran/31286 (cshift uses uninitialized variables)
...
PR libfortran/31286
PR libfortran/31296
* intrinsics/cshift0.c (cshift0): Initialize sstride[0] and rstride[0].
* intrinsics/unpack_generic.c (unpack0, unpack0_char): Zero the
array structures we pass to unpack_internal.
From-SVN: r123944
2007-04-18 08:47:28 +00:00
Jerry DeLisle
b4501dfdd2
open.c (test_endfile): Revert changes for 31052, restoring this function.
...
2007-04-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
* io/open.c (test_endfile): Revert changes for 31052, restoring this
function.
From-SVN: r123842
2007-04-15 01:53:43 +00:00
Steve Ellcey
01a6a27a02
Makefile.am: Add -I ..
...
* Makefile.am: Add -I .. to ACLOCAL_AMFLAGS. Add libgfortran_la_LINK.
* Makefile.in: Regenerate.
From-SVN: r123827
2007-04-14 19:50:46 +00:00
Kai Tietz
c18b8a1c11
configure: Regenerate.
...
libgfortran:
2007-04-11 Kai Tietz <kai.tietz@onevision.com>
* configure: Regenerate.
libdecnumber:
2007-04-11 Kai Tietz <kai.tietz@onevision.com>
* configure: Regenerate.
config:
2007-04-11 Kai Tietz <kai.tietz@onevision.com>
* stdint.m4: Make template compatible with older cygwin
types.h, wrapping each type in a __XXX_t_defined #ifdef.
From-SVN: r123746
2007-04-12 13:06:43 +00:00
Francois-Xavier Coudert
5e9f08ba5d
cpu_time.c: Don't include headers already included by libgfortran.h.
...
* intrinsics/cpu_time.c: Don't include headers already included
by libgfortran.h. Protect inclusion of sys/times.h.
* configure.ac: Remove unneeded checks for finit, stdio.h,
stddef.h, math.h and sys/params.h.
* config/fpu-aix.h: Don't include headers already included by
libgfortran.h.
* config/fpu-sysv.h: Likewise.
* io/write.c: Likewise.
* m4/minloc1.m4: Likewise.
* m4/maxloc1.m4: Likewise.
* m4/fraction.m4: Likewise.
* m4/set_exponent.m4: Likewise.
* m4/spacing.m4: Likewise.
* m4/minval.m4: Likewise.
* m4/maxval.m4: Likewise.
* m4/exponent.m4: Likewise.
* m4/nearest.m4: Likewise.
* m4/minloc0.m4: Likewise.
* m4/maxloc0.m4: Likewise.
* m4/rrspacing.m4: Likewise.
* runtime/main.c: Likewise.
* runtime/error.c: Likewise.
* intrinsics/system_clock.c: Likewise.
* intrinsics/etime.c: Likewise.
* intrinsics/stat.c: Likewise.
* intrinsics/date_and_time.c: Likewise.
* intrinsics/env.c: Likewise.
* intrinsics/kill.c: Likewise.
* intrinsics/getXid.c: Likewise.
* intrinsics/chmod.c: Likewise.
* intrinsics/args.c: Likewise.
* intrinsics/c99_functions.c: Likewise.
* generated/minval_r8.c: Regenerate.
* generated/maxloc1_4_r8.c: Regenerate.
* generated/minloc1_16_r16.c: Regenerate.
* generated/maxval_i2.c: Regenerate.
* generated/maxloc1_8_i4.c: Regenerate.
* generated/exponent_r16.c: Regenerate.
* generated/maxloc0_4_r4.c: Regenerate.
* generated/fraction_r16.c: Regenerate.
* generated/fraction_r4.c: Regenerate.
* generated/minloc0_4_r16.c: Regenerate.
* generated/minloc0_4_i1.c: Regenerate.
* generated/maxloc0_4_r16.c: Regenerate.
* generated/maxloc0_4_i2.c: Regenerate.
* generated/minloc1_8_r16.c: Regenerate.
* generated/maxloc1_8_r16.c: Regenerate.
* generated/set_exponent_r8.c: Regenerate.
* generated/maxloc0_8_i8.c: Regenerate.
* generated/minloc1_4_r8.c: Regenerate.
* generated/maxloc1_16_r16.c: Regenerate.
* generated/minloc1_16_i4.c: Regenerate.
* generated/maxloc1_16_i4.c: Regenerate.
* generated/minloc0_16_i8.c: Regenerate.
* generated/maxloc0_16_i8.c: Regenerate.
* generated/nearest_r8.c: Regenerate.
* generated/spacing_r16.c: Regenerate.
* generated/maxval_r16.c: Regenerate.
* generated/minloc1_8_i4.c: Regenerate.
* generated/minloc0_16_i16.c: Regenerate.
* generated/minloc0_4_r4.c: Regenerate.
* generated/set_exponent_r10.c: Regenerate.
* generated/rrspacing_r10.c: Regenerate.
* generated/minloc0_4_i2.c: Regenerate.
* generated/maxloc0_8_i1.c: Regenerate.
* generated/minloc0_8_i8.c: Regenerate.
* generated/spacing_r4.c: Regenerate.
* generated/minloc1_16_r10.c: Regenerate.
* generated/minloc0_16_i1.c: Regenerate.
* generated/maxloc0_16_i1.c: Regenerate.
* generated/maxloc1_8_r8.c: Regenerate.
* generated/minval_i16.c: Regenerate.
* generated/exponent_r10.c: Regenerate.
* generated/maxval_i4.c: Regenerate.
* generated/minval_i8.c: Regenerate.
* generated/maxloc1_4_i8.c: Regenerate.
* generated/fraction_r10.c: Regenerate.
* generated/maxloc0_16_i16.c: Regenerate.
* generated/maxloc0_8_r4.c: Regenerate.
* generated/rrspacing_r8.c: Regenerate.
* generated/minloc1_4_i16.c: Regenerate.
* generated/minloc0_4_r10.c: Regenerate.
* generated/maxloc1_4_i16.c: Regenerate.
* generated/minloc0_8_i16.c: Regenerate.
* generated/maxloc0_4_r10.c: Regenerate.
* generated/maxloc0_8_i16.c: Regenerate.
* generated/minloc1_8_r10.c: Regenerate.
* generated/minloc0_16_r4.c: Regenerate.
* generated/maxloc1_8_r10.c: Regenerate.
* generated/maxloc0_16_r4.c: Regenerate.
* generated/minloc1_16_r8.c: Regenerate.
* generated/minloc0_8_i1.c: Regenerate.
* generated/maxloc0_4_i4.c: Regenerate.
* generated/maxloc1_16_r8.c: Regenerate.
* generated/maxloc0_8_i2.c: Regenerate.
* generated/nearest_r16.c: Regenerate.
* generated/maxloc1_16_r10.c: Regenerate.
* generated/minloc0_16_i2.c: Regenerate.
* generated/minloc1_8_r8.c: Regenerate.
* generated/maxloc0_16_i2.c: Regenerate.
* generated/exponent_r4.c: Regenerate.
* generated/spacing_r10.c: Regenerate.
* generated/maxval_r10.c: Regenerate.
* generated/minval_i1.c: Regenerate.
* generated/maxloc1_4_i1.c: Regenerate.
* generated/minloc1_4_i8.c: Regenerate.
* generated/minloc0_8_r4.c: Regenerate.
* generated/minloc0_16_r16.c: Regenerate.
* generated/minloc0_4_i4.c: Regenerate.
* generated/minloc0_8_i2.c: Regenerate.
* generated/minval_r4.c: Regenerate.
* generated/maxloc1_4_r4.c: Regenerate.
* generated/maxval_r8.c: Regenerate.
* generated/minval_r16.c: Regenerate.
* generated/minloc1_4_i1.c: Regenerate.
* generated/minval_i2.c: Regenerate.
* generated/maxloc1_4_i2.c: Regenerate.
* generated/maxloc1_8_i8.c: Regenerate.
* generated/maxloc0_4_r8.c: Regenerate.
* generated/maxloc0_16_r16.c: Regenerate.
* generated/minloc1_4_r16.c: Regenerate.
* generated/fraction_r8.c: Regenerate.
* generated/maxloc1_4_r16.c: Regenerate.
* generated/set_exponent_r4.c: Regenerate.
* generated/minloc0_8_r16.c: Regenerate.
* generated/maxloc0_8_r16.c: Regenerate.
* generated/nearest_r10.c: Regenerate.
* generated/maxloc0_8_i4.c: Regenerate.
* generated/minloc1_4_r4.c: Regenerate.
* generated/minloc0_16_i4.c: Regenerate.
* generated/maxloc0_16_i4.c: Regenerate.
* generated/nearest_r4.c: Regenerate.
* generated/minloc1_16_i8.c: Regenerate.
* generated/maxloc1_16_i8.c: Regenerate.
* generated/minloc1_4_i2.c: Regenerate.
* generated/maxloc1_8_i1.c: Regenerate.
* generated/minloc0_16_r10.c: Regenerate.
* generated/minloc1_8_i8.c: Regenerate.
* generated/minloc0_4_r8.c: Regenerate.
* generated/minloc0_8_i4.c: Regenerate.
* generated/minloc1_16_i16.c: Regenerate.
* generated/spacing_r8.c: Regenerate.
* generated/maxloc1_8_r4.c: Regenerate.
* generated/minloc1_16_i1.c: Regenerate.
* generated/maxloc1_16_i1.c: Regenerate.
* generated/minval_r10.c: Regenerate.
* generated/minval_i4.c: Regenerate.
* generated/minloc1_8_i1.c: Regenerate.
* generated/maxloc1_4_i4.c: Regenerate.
* generated/maxloc1_8_i2.c: Regenerate.
* generated/maxval_i8.c: Regenerate.
* generated/maxloc0_16_r10.c: Regenerate.
* generated/rrspacing_r4.c: Regenerate.
* generated/minloc0_4_i16.c: Regenerate.
* generated/maxloc0_8_r8.c: Regenerate.
* generated/maxloc0_4_i16.c: Regenerate.
* generated/minloc1_4_r10.c: Regenerate.
* generated/minloc1_8_i16.c: Regenerate.
* generated/maxloc1_4_r10.c: Regenerate.
* generated/minloc0_8_r10.c: Regenerate.
* generated/maxloc1_8_i16.c: Regenerate.
* generated/maxloc0_8_r10.c: Regenerate.
* generated/minloc1_16_r4.c: Regenerate.
* generated/maxloc1_16_r4.c: Regenerate.
* generated/minloc0_16_r8.c: Regenerate.
* generated/maxloc0_16_r8.c: Regenerate.
* generated/maxloc0_4_i8.c: Regenerate.
* generated/maxloc1_16_i16.c: Regenerate.
* generated/minloc1_8_r4.c: Regenerate.
* generated/minloc1_16_i2.c: Regenerate.
* generated/maxloc1_16_i2.c: Regenerate.
* generated/maxval_i16.c: Regenerate.
* generated/exponent_r8.c: Regenerate.
* generated/minloc1_4_i4.c: Regenerate.
* generated/maxval_i1.c: Regenerate.
* generated/minloc1_8_i2.c: Regenerate.
* generated/minloc0_8_r8.c: Regenerate.
* generated/set_exponent_r16.c: Regenerate.
* generated/maxloc0_4_i1.c: Regenerate.
* generated/rrspacing_r16.c: Regenerate.
* generated/minloc0_4_i8.c: Regenerate.
* generated/maxval_r4.c: Regenerate.
* configure: Regenerate.
* config.h.in: Regenerate.
From-SVN: r123623
2007-04-06 16:47:23 +00:00
Jerry DeLisle
5a97b4f907
re PR fortran/31395 ([4.2 Only] Colon edit descriptor is ignored unless preceded by a comma or a slash)
...
2007-04-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31395
* io/format.c (parse_format_list): Fix parsing.
From-SVN: r123620
2007-04-06 15:39:02 +00:00
Francois-Xavier Coudert
f1412ca58a
re PR fortran/31304 (REPEAT argument NCOPIES is not converted as it should)
...
PR fortran/31304
* fortran/gfortran.h (gfc_charlen_int_kind): New prototype.
* fortran/trans-types.c (gfc_charlen_int_kind): New variable.
(gfc_init_types): Define gfc_charlen_int_kind.
* fortran/trans.h (gfor_fndecl_string_repeat): Remove prototype.
* fortran/trans-decl.c (gfor_fndecl_string_repeat): Delete.
(gfc_build_intrinsic_function_decls): Don't set
gfor_fndecl_string_repeat.
* fortran/trans-intrinsic.c (gfc_conv_intrinsic_repeat): Rewrite
so that we don't have to call a library function.
* fortran/simplify.c (gfc_simplify_repeat): Perform the necessary
checks on the NCOPIES argument, and work with arbitrary size
arguments.
* intrinsics/string_intrinsics.c (string_repeat): Remove.
* gfortran.dg/repeat_2.f90: New test.
* gfortran.dg/repeat_3.f90: New test.
* gfortran.dg/repeat_4.f90: New test.
From-SVN: r123481
2007-04-03 21:05:14 +00:00
Jerry DeLisle
08f9246a45
re PR libfortran/31052 ([4.2 only] Bad IOSTAT values when readings NAMELISTs past EOF)
...
2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31052
* io/open.c (test_endfile): Delete this function.
(edit_modes): Delete call to test_endfile.
(new_unit): Likewise.
* io/io.h: Delete prototype for test_endfile.
* io/transfer.c (next_record_r): Remove use of test_endfile.
(st_read): Add test for end file condition and adjust status.
From-SVN: r123403
2007-04-01 17:32:20 +00:00
Jerry DeLisle
138469296c
re PR fortran/31366 ([4.2 only] Last record truncated for read after short write, direct access file)
...
2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31366
* io/transfer.c (read_block_direct): Do not generate error when reading
past EOF on a short record that is less than the RECL= specified.
2007-04-01 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31207
* io/unit.c (close_unit_1): If there are bytes previously written from
ADVANCE="no", move to the end before closing.
From-SVN: r123401
2007-04-01 15:23:48 +00:00
Francois-Xavier Coudert
29e86cb09c
re PR libfortran/31335 (Calls lstat(), stat() and fstat() in libgfortran should be protected by autoconf HAVE_{L,,F}STAT macros)
...
PR libfortran/31335
* intrinsics/stat.c: Only provide STAT and FSTAT library routines
if stat() and fstat() library functions are available. When lstat()
is not available, use stat() instead.
* configure.ac: Add checks for stat, fstat and lstat.
* configure: Regenerate.
* config.h.in: Regenerate.
From-SVN: r123388
2007-03-31 19:41:11 +00:00
Jerry DeLisle
f70ddc12ec
re PR libfortran/31052 ([4.2 only] Bad IOSTAT values when readings NAMELISTs past EOF)
...
2007-03-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31052
* io/transfer.c (next_record_r): Do not call test_endfile if in namelist
mode.
From-SVN: r123284
2007-03-28 00:19:39 +00:00
Jerry DeLisle
2ff0a77e97
Fix date in entry.
...
From-SVN: r123206
2007-03-26 03:26:51 +00:00
Jerry DeLisle
beb6a65e75
re PR fortran/31199 (write with "t1" + nonadvancing transfer format gives wrong output)
...
2007-03-25 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31199
*io/io.h: Add saved_pos to gfc_unit structure.
*io/open.c (new_unit): Initialize saved_pos.
*io/transfer.c (data_transfer_init): Set max_pos to value in saved_pos.
(next_record_w): Fix whitespace.
(finalze_transfer): Calculate max_pos for ADVANCE="no" and save it for
later use. If not ADVANCE="no" set saved_pos to zero.
From-SVN: r123205
2007-03-26 03:23:15 +00:00
Thomas Koenig
cc41ec4ebc
re PR fortran/31196 ([4.1 only] wrong code generated with RESHAPE/TRANSPOSE)
...
2007-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/31196
* intrinsics/reshape_generic.c (reshape_internal): Increment
correct variable.
2007-03-25 Thomas Koenig <tkoenig@gcc.gnu.org>
PR libfortran/31196
* gfortran.dg/reshape_transpose_1.f90: New test.
From-SVN: r123195
2007-03-25 08:29:10 +00:00
Jerry DeLisle
9a7b6ea727
re PR libfortran/31052 ([4.2 only] Bad IOSTAT values when readings NAMELISTs past EOF)
...
2007-03-22 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31052
* file_pos.c: Update Copyright year.
* io/open.c (test_endfile): Restore test_endfile to fix SPEC regression.
Update Copyright year.
* io/io.h: Same.
* io/unix.c (is_special): Add missing type for this function.
Update Copyright year.
* io/transfer.c (next_record_r): Restore test_endfile.
(st_read): Fix whitespace. Update Copyright year
From-SVN: r123139
2007-03-23 00:13:19 +00:00
Francois-Xavier Coudert
7f483eece3
configure.ac: Add missing check for gettimeofday.
...
* configure.ac: Add missing check for gettimeofday.
* config.h.in: Renegerate.
* configure: Regenerate.
From-SVN: r123094
2007-03-20 23:09:39 +00:00
Jerry DeLisle
7ab8aa3620
re PR libfortran/31052 ([4.2 only] Bad IOSTAT values when readings NAMELISTs past EOF)
...
2007-03-18 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31052
* io/file_position (st_rewind): Fix comments. Remove use of
test_endfile. Don't seek if already at 0 position. Use new is_special
function to set endfile state.
* io/open.c (test_endfile): Delete this function.
* io/io.h: Delete prototype for test_endfile. Add prototype
for is_special.
* io/unix.c (is_special): New function. Fix whitespace.
* io/transfer.c (next_record_r): Remove use of test_endfile.
From-SVN: r123038
2007-03-18 18:13:50 +00:00
David Edelsohn
b24e9b3902
* runtime/main.c: Include "config.h" first.
...
From-SVN: r122994
2007-03-16 11:50:19 -04:00
Jerry DeLisle
b746fc0e8c
re PR libfortran/31099 (Runtime error on legal code using RECL)
...
2007-03-15 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31099
* io/file_pos.c (st_rewind): Don't set bytes_left to zero.
From-SVN: r122970
2007-03-16 00:41:36 +00:00
Francois-Xavier Coudert
868d75dbdc
gfortran.h (gfc_option_t): Add flag_backtrace field.
...
* gfortran.h (gfc_option_t): Add flag_backtrace field.
* lang.opt: Add -fbacktrace option.
* invoke.texi: Document the new option.
* trans-decl.c (gfc_build_builtin_function_decls): Add new
option to the call to set_std.
* options.c (gfc_init_options, gfc_handle_option): Handle the
new option.
* runtime/backtrace.c: New file.
* runtime/environ.c (variable_table): New GFORTRAN_ERROR_BACKTRACE
environment variable.
* runtime/compile_options.c (set_std): Add new argument.
* runtime/main.c (store_exe_path, full_exe_path): New functions.
* runtime/error.c (sys_exit): Add call to show_backtrace.
* libgfortran.h (options_t): New backtrace field.
(store_exe_path, full_exe_path, show_backtrace): New prototypes.
* configure.ac: Add checks for execinfo.h, execvp, pipe, dup2,
close, fdopen, strcasestr, getrlimit, backtrace, backtrace_symbols
and getppid.
* Makefile.am: Add runtime/backtrace.c.
* fmain.c (main): Add call to store_exe_path.
* Makefile.in: Renegerate.
* config.h.in: Renegerate.
* configure: Regenerate.
From-SVN: r122954
2007-03-15 12:39:47 +00:00
Jerry DeLisle
22cbc70726
re PR fortran/31051 ([4.2 Only] gfortran bug with x and t format descriptors.)
...
2007-03-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31051
* io/transfer.c (formatted_transfer_scalar): Adjust position for pending
spaces when in writing mode. Clean up some formatting.
From-SVN: r122940
2007-03-15 01:25:27 +00:00
Thomas Koenig
adea5e16e4
re PR libfortran/30690 ([4.2, 4.1 only] Clean up m4 files)
...
2007-03-14 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/30690
* all.m4: Quote everything, except for m4 macros.
* any.m4: Likewise.
* count.m4: Likewise.
* cshift1.m4: Likewise.
* eoshift1.m4: Likewise.
* eoshift3.m4: Likewise.
* exponent.m4: Likewise.
* fraction.m4: Likewise.
* in_pack.m4: Likewise.
* in_unpack.m4: Likewise.
* matmul.m4: Likewise.
* matmull.m4: Likewise.
* nearest.m4: Likewise.
* pow.m4: Likewise.
* product.m4: Likewise.
* reshape.m4: Likewise.
* rrspacing.m4: Likewise.
* set_exponent.m4: Likewise.
* shape.m4: Likewise.
* spacing.m4: Likewise.
* transpose.m4: Likewise.
From-SVN: r122927
2007-03-14 19:26:38 +00:00
Jakub Jelinek
d70d13acb5
unix.c (regular_file): For ACTION_UNSPECIFIED retry with O_RDONLY even if errno is EROFS.
...
* io/unix.c (regular_file): For ACTION_UNSPECIFIED retry with
O_RDONLY even if errno is EROFS.
From-SVN: r122914
2007-03-14 13:14:58 +01:00
Jerry DeLisle
f4072316a3
re PR libfortran/31099 (Runtime error on legal code using RECL)
...
2007-03-09 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/31099
* io/open.c (new_unit): Initialize bytes_left and recl_subrecord.
* io/transfer.c (next_record_w): Set bytes left to record length for
sequential unformatted I/O.
(next_record_r): Ditto.
(read_block_direct): Fix test for exceeding bytes_left.
From-SVN: r122763
2007-03-09 21:51:39 +00:00
Daniel Franke
02330e1953
re PR fortran/30947 (intrinsic: ALARM)
...
2007-03-08 Daniel Franke <franke.daniel@gmail.com>
PR fortran/30947
* intrinsics/signal.c (alarm_sub_int): Avoid SEGFAULT with
integer arguments.
From-SVN: r122716
2007-03-08 16:46:16 -05:00
Thomas Koenig
3d1f465aff
re PR fortran/30981 ([4.1 only] a ** exp fails for integer exponents if exp is "-huge()-1" (endless loop))
...
2007-03-04 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/30981
* m4/pow_m4: Use appropriate unsigned int type for u.
* generated/pow_c10_i16.c: Regenerated.
* generated/pow_c10_i4.c: Regenerated.
* generated/pow_c10_i8.c: Regenerated.
* generated/pow_c16_i16.c: Regenerated.
* generated/pow_c16_i4.c: Regenerated.
* generated/pow_c16_i8.c: Regenerated.
* generated/pow_c4_i16.c: Regenerated.
* generated/pow_c4_i4.c: Regenerated.
* generated/pow_c4_i8.c: Regenerated.
* generated/pow_c8_i16.c: Regenerated.
* generated/pow_c8_i4.c: Regenerated.
* generated/pow_c8_i8.c: Regenerated.
* generated/pow_i16_i16.c: Regenerated.
* generated/pow_i16_i4.c: Regenerated.
* generated/pow_i16_i8.c: Regenerated.
* generated/pow_i4_i16.c: Regenerated.
* generated/pow_i4_i4.c: Regenerated.
* generated/pow_i4_i8.c: Regenerated.
* generated/pow_i8_i16.c: Regenerated.
* generated/pow_i8_i4.c: Regenerated.
* generated/pow_i8_i8.c: Regenerated.
* generated/pow_r10_i16.c: Regenerated.
* generated/pow_r10_i4.c: Regenerated.
* generated/pow_r10_i8.c: Regenerated.
* generated/pow_r16_i16.c: Regenerated.
* generated/pow_r16_i4.c: Regenerated.
* generated/pow_r16_i8.c: Regenerated.
* generated/pow_r4_i16.c: Regenerated.
* generated/pow_r4_i4.c: Regenerated.
* generated/pow_r4_i8.c: Regenerated.
* generated/pow_r8_i16.c: Regenerated.
* generated/pow_r8_i4.c: Regenerated.
* generated/pow_r8_i8.c: Regenerated.
2007-03-04 Thomas Koenig <Thomas.Koenig@online.de>
PR libfortran/30981
* gfortran.dg/integer_exponentiation_1.f90: New test.
From-SVN: r122522
2007-03-04 08:03:34 +00:00
Francois-Xavier Coudert
42d53ef301
re PR libfortran/31001 ([4.1 only] PACK crashes on zero-sized arrays)
...
PR libfortran/31001
* intrinsics/pack_generic.c (pack_internal): Add special checks
for zero-sized arrays.
* gfortran.dg/zero_sized_3.f90: New test.
From-SVN: r122507
2007-03-03 16:37:54 +00:00
Brooks Moses
e6e3b4b35e
Makefile.am: Add dummy install-pdf target.
...
* Makefile.am: Add dummy install-pdf target.
* Makefile.in: Regenerate
From-SVN: r122446
2007-03-01 15:57:32 -08:00
Jerry DeLisle
4f8d744edb
re PR libfortran/30918 (Failure to skip commented out NAMELIST)
...
2007-02-24 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/30918
* io/listread.c (namelist_read): Eat comment line.
From-SVN: r122307
2007-02-25 02:27:17 +00:00