12007-12-27  Thomas Koenig  <tkoenig@gcc.gnu.org>
2
3	PR libfortran/22423
4	* intrinsics/pack_generic.c (pack): Change type of mask argument
5	to gfc_array_l1 * in prototype and function.
6	(pack_char):  Likewise.
7	* intrinsics/unpack_generic.c (unpack1):  Likewise.
8	(unpack1_char):  Likewise.
9	(unpack0):  Likewise.
10	(unpack0_char):  Likewise.
11
122007-12-27  Thomas Koenig  <tkoenig@gcc.gnu.org>
13
14	PR libfortran/34594
15	* runtime/error.c: If there was a previous error, don't
16	mask it with another error mesage, EOF or EOR condition.
17
182007-12-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
19
20	PR libfortran/34560
21	* io/transfer.c (read_sf): Check if readlen was less than the requested
22	number of bytes to read and if so, generate error.
23
242007-12-25  Daniel Franke  <franke.daniel@gmail.com>
25
26	PR fortran/34533
27	* intrinsics/cpu_time.c: Moved code commonly usable for CPU_TIME,
28	DTIME and ETIME to ...
29	* intrinsics/time_1.h: ... here.
30	* intrinsics/dtime.c: New file.
31	* intrinsics/etime.c: Newly implemented using the common
32	time-aquisition function from time_1.h.
33	* gfortran.map (_gfortran_dtime, _gfortran_dtime_sub): New.
34	* Makefile.am: Added new file.
35	* Makefile.in: Regenerated.
36	* configure: Regenerated.
37
382007-12-25  Thomas Koenig  <tkoenig@gcc.gnu.org>
39
40	PR libfortran/34566
41	* m4/matmull.m4:  Multiply xstride and ystride by correct kind.
42	* generated/matmul_l4.c:  Regenerated.
43	* generated/matmul_l8.c:  Regenerated.
44	* generated/matmul_l16.c:  Regenerated.
45
462007-12-19  Tobias Burnus  <burnus@net-b.de>
47
48	PR fortran/34530
49	* io/list_read.c (eat_line): Move up in the file.
50	(eat_separator): In namelist mode, skip over comment lines.
51
522007-12-16  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
53
54	PR fortran/34427
55	* io/list_read.c (read_real): Handle intervening line ends and spaces.
56	(get_name): Don't push separators to saved_string.
57	(eat_separator): If in namelist mode eat spaces and line ends as well.
58
592007-12-13  Thomas Koenig  <tkoenig@gcc.gnu.org>
60
61	PR libfortran/34370
62	PR libfortran/34323
63	PR libfortran/34405
64	* io/io.h:  Add previous_nonadvancing_write to gfc_unit.
65	Add prototype for finish_last_advance_record.
66	* io/file_pos.c (st_backspace):  Generate error if backspace is
67	attempted for direct access or unformatted stream.
68	If there are bytes left from a previous ADVANCE="no", write
69	them out before performing the backspace.
70	(st_endfile):  Generate error if endfile is attempted for
71	direct access.
72	If there are bytes left from a previous ADVANCE="no", write
73	them out before performing the endfile.
74	(st_rewind):  Generate error if rewind is attempted for
75	direct access.
76	* unit.c (close_unit_1):  Move functionality to write
77	previously written bytes to...
78	(finish_last_advance_record):  ... here.
79	* transfer.c (data_transfer_init):  If reading, reset
80	previous_nonadvancing_write.
81	(finalize_transfer):  Set the previous_noadvancing_write
82	flag if we are writing and ADVANCE="no" was specified.
83	Only call next_record() if advance="no" wasn't specified.
84
852007-12-13  Tobias Burnus  <burnus@net-b.de>
86
87	PR fortran/34427
88	* io/list_read.c (read_real): Fix unwinding for namelists.
89
902007-12-10  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
91
92	PR libfortran/34411
93	* io/read.c (convert_real, read_l, read_decimal, read_radix, read_f):
94	Call next_record after bad read or overflow error.
95
962007-12-09  Tobias Burnus  <burnus@net-b.de>
97
98	PR fortran/34404
99	* io/list_read.c (parse_real): Remove superfluous "goto bad;".
100
1012007-12-08  Tobias Burnus  <burnus@net-b.de>
102
103	PR fortran/34319
104	* io/list_read.c (parse_real, read_real): Support NaN/Infinity.
105
1062007-12-02  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
107	    Thomas Koenig  <tkoenig@gcc.gnu.org>
108
109	PR libfortran/33985
110	* io/transfer.c (read_block, read_block_direct, write_block, write_buf):
111	Don't seek if file position is already there for STREAM I/O.
112	(finalize_transfer): For STREAM I/O don't flush unless the file position
113	has moved past the start position before the transfer.
114
1152007-12-01  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
116
117	* intrinsic/stat.c (stat_i4_sub_0, stat_i8_sub_0): Mark parameter
118	with unused attribute.
119	* intrinsics/system_clock.c (system_clock_4, system_clock_8):
120	Remove unused variable.
121	* intrinsics/umask.c: Include unistd.h.
122
1232007-11-30  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
124
125	PR libfortran/34291
126	* io/list_read.c (read_character): When reading an unquoted string,
127	return if special characters that could signify the end of the namelist
128	read are encountered.
129
1302007-11-29  Steven G. Kargl  <kargls@comcast.net>
131
132	PR libfortran/33583
133	* libgfortran/gfortran.map: Add tgammaf, tgamma, lgamma, and lgammaf.
134	* gfortran.dg/gamma_5.f90: Remove xfail.
135
1362007-11-16  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
137
138	PR libfortran/33583
139	PR libfortran/33698
140	* intrinsics/c99_functions.c (tgamma, tgammaf, lgamma, lgammaf):
141	New fallback functions.
142	* c99_protos.h (tgamma, tgammaf, lgamma, lgammaf): New prototypes.
143	* configure.ac: Add checks for tgamma, tgammaf, tgammal, lgamma,
144	lgammaf and lgammal.
145	* config.h.in: Regenerate.
146	* configure: Regenerate.
147
1482007-11-08  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
149
150	* mk-kinds-h.sh: Change sed syntax.
151
1522007-11-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
153
154	PR libfortran/33985
155	* io/transfer.c (finalize_transfer): Revert previous patch.
156
1572007-11-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
158
159	PR libfortran/33985
160	* io/transfer.c (finalize_transfer): Do not flush for
161	unformatted STREAM I/O.
162
1632007-10-27  Tobias Burnus  <burnus@net-b.de>
164
165	* mk-kinds-h.sh: Change LANG=C to LC_ALL=C.
166
1672007-10-26  Tobias Burnus  <burnus@net-b.de>
168
169	* mk-kinds-h.sh: Add "LANG=C".
170
1712007-10-26  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
172
173	* libgfortran.h (GFC_REAL_*_HUGE, GFC_REAL_*_DIGITS,
174	GFC_REAL_*_RADIX): Remove.
175	* mk-kinds-h.sh: Define GFC_REAL_*_HUGE, GFC_REAL_*_DIGITS and
176	GFC_REAL_*_RADIX. Don't define GFC_REAL_LARGEST_FORMAT and
177	GFC_REAL_LARGEST.
178
1792007-10-19  Ben Elliston  <bje@au.ibm.com>
180
181	* intrinsics/signal.c (alarm_sub_i4): Mark conditionally unused
182	parameters with __attribute__ ((unused)).
183	(alarm_sub_i8): Likewise.
184	(alarm_sub_int_i4): Likewise.
185	(alarm_sub_int_i8): Likewise.
186
1872007-10-18  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
188	    Jerry DeLisle  <jvdelisle@gcc.gnu.org>
189
190	PR libfortran/33795
191	* libgfortran.h: Add unbuffered_preconnected.
192	* io/unix.c (output_stream): Set stream unbuffered flag if
193	options.unbuffered_preconnected has been set.
194	(error_stream): Ditto.
195	* runtime/environ.c (variable_table): Add to environment variable table
196	the entry: GFORTRAN_UNBUFFERED_PRECONNECTED.
197
1982007-10-18  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
199
200	PR libfortran/32021
201	* runtime/backtrace.c (local_strcasestr): Protect by appropriate
202	macros.
203	* runtime/main.c (cleanup): Cast argument to free.
204	* intrinsics/spread_generic.c (spread_internal): Match runtime_error
205	arguments and format.
206	* intrinsics/signal.c (alarm_sub_int_i4, alarm_sub_int_i8): Cast
207	pointers to avoid warnings.
208
2092007-10-18  Ben Elliston  <bje@au.ibm.com>
210
211	* runtime/environ.c (init_choice): Remove unused function.
212	(show_choice): Likewise.
213	(choice): Remove.
214	(FP_ROUND_NEAREST, FP_ROUND_UP, FP_ROUND_DOWN, FP_ROUND_ZERO):
215	Remove.
216	(precision, signal_choices): Remove.
217
2182007-10-15 Christopher D. Rickett <crickett@lanl.gov>
219
220	PR fortran/32600
221	* libgfortran/intrinsics/iso_c_binding.c: Remove c_associated_1
222	and c_associated_2.
223	* libgfortran/intrinsics/iso_c_binding.h: Ditto.
224	* libgfortran/gfortran.map: Ditto.
225
2262007-10-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
227
228	PR libfortran/33055
229	* io/inquire.c (inquire_via_unit):  If inquiring by unit, check for
230	an error condition from the IOSTAT variable and set EXIST to false if
231	there was a bad unit number.
232
2332007-10-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
234
235	PR libfortran/33672
236	* io/list_read.c (nml_parse_qualifier): Add character specific error
237	messages.  Check for proper form of sub-string qualifiers.  Return the
238	parsed_rank flag indicating a non-zero rank qualifier.
239	(nml_get_obj_data):  Count the instances of non-zero rank qualifiers.
240	Issue an error if more that one non-zero rank qualifier is found.
241
2422007-10-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
243
244	PR libfortran/33253
245	* io/list_read.c (read_character): Use line_buffer to scan ahead for
246	object name or string when no delimiter is found.
247
2482007-10-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
249
250	PR libfortran/32021
251	* runtime/environ.c (init_mem, show_mem, init_round, show_round,
252	init_precision, show_precision, init_signal, show_signal): Remove.
253	(variable_table): Remove GFORTRAN_MEM_INIT, GFORTRAN_MEM_CHECK,
254	GFORTRAN_SIGHUP, GFORTRAN_SIGINT, GFORTRAN_FPU_ROUND and
255	GFORTRAN_FPU_PRECISION.
256	* libgfortran.h (options_t): Remove mem_check, fpu_round,
257	fpu_precision, sighup, sigint, allocate_init_flag and
258	allocate_init_value.
259
2602007-10-02  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
261
262	PR libfortran/33253
263	* io/list_read.c (read_character): Use DELIM_APOSTROPHE and DELIM_QUOTE
264	and quote value in check of first character in string.
265
2662007-10-02  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
267
268	PR fortran/33469
269	* io/write.c (write_real): Widen the default formats.
270
2712007-09-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
272
273	PR libfortran/33400
274	* io/list_read.c (next_char): Interpret encountering the end of file the
275	first time as an end of line.  Subsequent reads give EOF error.
276
2772007-09-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
278
279	PR libfortran/33421
280	* io/list_read.c (read_character): Revert r128057.
281
2822007-09-21  Bernhard Fischer  <aldot>
283
284	PR fortran/31546
285	* (configure.ac): Add --enable-intermodule for onestep build.
286	* (Makefile.am): Handle onestep build.
287	* (configure, Makefile.in): Regenerate.
288
2892007-09-21  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
290
291	PR libfortran/26253
292	* intrinsics/c99_functions.c (scalbn): Use ldexp if appopriate.
293
2942007-09-21  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
295
296	PR libfortran/23272
297	* io/unix.c (id_from_handle, id_from_path, id_from_fd): New
298	functions.
299	(compare_file_filename, find_file, find_file0): Use the new
300	functions above.
301
3022007-09-21  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
303
304	* acinclude.m4 (LIBGFOR_TARGET_ILP32): Remove test.
305	* configure.ac: Don't call LIBGFOR_TARGET_ILP32.
306	* configure: Regenerate.
307	* config.h.in: Regenerate.
308
3092007-09-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
310
311	PR libfortran/21185
312	* runtime/compile_options.c (set_options): Fix typo.
313	* runtime/main.c (store_exe_path): If getcwd is not available,
314	don't use it.
315	* intrinsics/getcwd.c: Same thing here.
316	* io/unix.c (fallback_access): New fallback function for access.
317	(fix_fd): Don't use dup if it's not available.
318	* configure.ac: Check for dup and getcwd.
319	* configure: Regenerate.
320	* config.h.in: Regenerate.
321
3222007-09-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
323
324	* io/io.h: Include libgfortran.h first.
325
3262007-09-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
327
328	PR libfortran/33386
329	* runtime/select.c (select_string): Initialize default_jump.
330
3312007-09-07  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
332
333	PR libfortran/33307
334	* io/filepos.c (st_backspace): Don't truncate when already at the end
335	of the file.
336
3372007-09-07  Uros Bizjak  <ubizjak@gmail.com>
338
339	* config/fpu-387.h: Include cpuid.h.
340	(set_fpu): Use __get_cpuid to check for SSE.
341
3422007-09-06  Thomas Koenig  <tkoenig@gcc.gnu.org>
343
344	PR fortran/33298
345	* intrinsics/spread_generic.c(spread_internal): Enable
346	bounds checking by comparing extents if the bounds_check
347	option has been set.  If any extent is <=0, return early.
348
3492007-09-06  David Edelsohn  <edelsohn@gnu.org>
350
351	* libgfortran.h: Include config.h first.
352	* io/io.h (struct stream): Rename truncate to trunc.
353	* io/unix.c (fd_open): Same.
354	(open_internal): Same.
355
3562007-09-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
357
358	PR libfortran/33253
359	* io/write.c (nml_write_obj): Set the delimiter correctly before
360	calling write_character. (namelist_write): Clean up the code a little
361	and add comments to clarify what its doing.
362
3632007-09-04  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
364
365	PR libfortran/33225
366	* io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
367	new file write_float.def. Include write_float.def.
368	(extract_real): Delete. (calculate_sign): Delete.
369	(calculate_exp): Delete. (calculate_G_format): Delete.
370	(output_float): Delete. (write_float): Delete.
371	* io/write_float.def (calculate_sign): Added.
372	(output_float): Refactored to be independent of kind and added to this
373	file for inclusion. (write_infnan): New function to write "Infinite"
374	or "NaN" depending on flags passed, independent of kind.
375	(CALCULATE_EXP): New macro to build kind specific functions. Use it.
376	(OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
377	(DTOA, DTOAL): Macros to implement "decimal to ascii".
378	(WRITE_FLOAT): New macro for kind specific write_float functions.
379	(write_float): Revised function to determine kind and use WRITE_FLOAT
380	to implement kind specific output.
381
3822007-09-03  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
383
384	PR libfortran/33253
385	* io/list_read.c (read_character): Use DELIM_APOSTROPHE and
386	DELIM_QUOTE in check of first character in string.
387
3882007-09-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
389
390	PR fortran/31675
391	* libgfortran.h: Include gcc/fortran/libgfortran.h.
392	Remove M_PI, GFC_MAX_DIMENSIONS, GFC_DTYPE_*, GFC_NUM_RANK_BITS,
393	error_codes, GFC_STD_*, GFC_FPE_* and unit_convert.
394	* runtime/environ.c (variable_table): Use GFC_*_UNIT_NUMBER instead
395	of hardcoded constants.
396	(do_parse, init_unformatted): Use GFC_CONVERT_* macros instead of
397	CONVERT_*.
398	* runtime/string.c (find_option): Use LIBERROR_BAD_OPTION instead
399	of ERROR_BAD_OPTION.
400	* runtime/error.c (translate_error, generate_error): Use
401	LIBERROR_* macros instead of ERROR_*.
402	* io/file_pos.c (formatted_backspace, unformatted_backspace,
403	st_backspace, st_rewind, st_flush): Rename macros.
404	* io/open.c (convert_opt, edit_modes, new_unit, already_open,
405	st_open): Likewise.
406	* io/close.c (st_close): Likewise.
407	* io/list_read.c (next_char, convert_integer, parse_repeat,
408	read_logical, read_integer, read_character, parse_real,
409	check_type, list_formatted_read_scalar, namelist_read,
410	nml_err_ret): Likewise.
411	* io/read.c (convert_real, read_l, read_decimal, read_radix,
412	read_f): Likewise.
413	* io/inquire.c (inquire_via_unit): Likewise.
414	* io/unit.c (get_internal_unit): Likewise.
415	* io/transfer.c (read_sf, read_block, read_block_direct,
416	write_block, write_buf, unformatted_read, unformatted_write,
417	formatted_transfer_scalar, us_read, us_write, data_transfer_init,
418	skip_record, next_record_r, write_us_marker, next_record_w_unf,
419	next_record_w, finalize_transfer, st_read, st_write_done):
420	Likewise.
421	* io/format.c (format_error): Likewise.
422
4232007-08-31  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
424
425	* m4/minloc1.m4: Update copyright year and ajust headers order.
426	* m4/maxloc1.m4: Likewise.
427	* m4/in_pack.m4: Likewise.
428	* m4/sum.m4: Likewise.
429	* m4/fraction.m4: Likewise.
430	* m4/all.m4: Likewise.
431	* m4/set_exponent.m4: Likewise.
432	* m4/transpose.m4: Likewise.
433	* m4/eoshift1.m4: Likewise.
434	* m4/spacing.m4: Likewise.
435	* m4/eoshift3.m4: Likewise.
436	* m4/minval.m4: Likewise.
437	* m4/count.m4: Likewise.
438	* m4/maxval.m4: Likewise.
439	* m4/exponent.m4: Likewise.
440	* m4/shape.m4: Likewise.
441	* m4/head.m4: Likewise.
442	* m4/cshift1.m4: Likewise.
443	* m4/minloc0.m4: Likewise.
444	* m4/nearest.m4: Likewise.
445	* m4/maxloc0.m4: Likewise.
446	* m4/pow.m4: Likewise.
447	* m4/in_unpack.m4: Likewise.
448	* m4/matmull.m4: Likewise.
449	* m4/product.m4: Likewise.
450	* m4/reshape.m4: Likewise.
451	* m4/any.m4: Likewise.
452	* m4/rrspacing.m4: Likewise.
453	* m4/matmul.m4: Likewise.
454	* runtime/backtrace.c: Likewise.
455	* runtime/environ.c: Likewise.
456	* runtime/in_pack_generic.c: Likewise.
457	* runtime/compile_options.c: Likewise.
458	* runtime/in_unpack_generic.c: Likewise.
459	* runtime/main.c: Likewise.
460	* runtime/stop.c: Likewise.
461	* runtime/string.c: Likewise.
462	* runtime/memory.c: Likewise.
463	* runtime/error.c: Likewise.
464	* runtime/pause.c: Likewise.
465	* intrinsics/ierrno.c: Likewise.
466	* intrinsics/system_clock.c: Likewise.
467	* intrinsics/cshift0.c: Likewise.
468	* intrinsics/unlink.c: Likewise.
469	* intrinsics/ctime.c: Likewise.
470	* intrinsics/etime.c: Likewise.
471	* intrinsics/cpu_time.c: Likewise.
472	* intrinsics/malloc.c: Likewise.
473	* intrinsics/hostnm.c: Likewise.
474	* intrinsics/sleep.c: Likewise.
475	* intrinsics/exit.c: Likewise.
476	* intrinsics/perror.c: Likewise.
477	* intrinsics/transpose_generic.c: Likewise.
478	* intrinsics/pack_generic.c: Likewise.
479	* intrinsics/spread_generic.c: Likewise.
480	* intrinsics/stat.c: Likewise.
481	* intrinsics/string_intrinsics.c: Likewise.
482	* intrinsics/getcwd.c: Likewise.
483	* intrinsics/date_and_time.c: Likewise.
484	* intrinsics/unpack_generic.c: Likewise.
485	* intrinsics/move_alloc.c: Likewise.
486	* intrinsics/getlog.c: Likewise.
487	* intrinsics/eoshift0.c: Likewise.
488	* intrinsics/eoshift2.c: Likewise.
489	* intrinsics/reshape_generic.c: Likewise.
490	* intrinsics/system.c: Likewise.
491	* intrinsics/iso_c_binding.c: Likewise.
492	* intrinsics/env.c: Likewise.
493	* intrinsics/kill.c: Likewise.
494	* intrinsics/reshape_packed.c: Likewise.
495	* intrinsics/time.c: Likewise.
496	* intrinsics/gerror.c: Likewise.
497	* intrinsics/access.c: Likewise.
498	* intrinsics/fnum.c: Likewise.
499	* intrinsics/abort.c: Likewise.
500	* intrinsics/rename.c: Likewise.
501	* intrinsics/signal.c: Likewise.
502	* intrinsics/symlnk.c: Likewise.
503	* intrinsics/random.c: Likewise.
504	* intrinsics/umask.c: Likewise.
505	* intrinsics/getXid.c: Likewise.
506	* intrinsics/rand.c: Likewise.
507	* intrinsics/chdir.c: Likewise.
508	* intrinsics/chmod.c: Likewise.
509	* intrinsics/clock.c: Likewise.
510	* intrinsics/args.c: Likewise.
511	* intrinsics/link.c: Likewise.
512	* c99_protos.h: Likewise.
513	* config/fpu-387.h: Likewise.
514	* config/fpu-aix.h: Likewise.
515	* config/fpu-sysv.h: Likewise.
516	* config/fpu-generic.h: Likewise.
517	* config/fpu-glibc.h: Likewise.
518	* io/file_pos.c: Likewise.
519	* io/open.c: Likewise.
520	* io/size_from_kind.c: Likewise.
521	* io/close.c: Likewise.
522	* io/list_read.c: Likewise.
523	* io/read.c: Likewise.
524	* io/inquire.c: Likewise.
525	* io/unit.c: Likewise.
526	* io/unix.c: Likewise.
527	* io/transfer.c: Likewise.
528	* io/intrinsics.c: Likewise.
529	* io/format.c: Likewise.
530	* io/lock.c: Likewise.
531	* io/write.c: Likewise.
532	* io/write_float.def: Likewise.
533	* fmain.c: Likewise.
534	* generated/minval_r8.c: Regenerate.
535	* generated/minloc1_16_r16.c: Regenerate.
536	* generated/maxloc1_4_r8.c: Regenerate.
537	* generated/sum_i8.c: Regenerate.
538	* generated/eoshift3_4.c: Regenerate.
539	* generated/transpose_c8.c: Regenerate.
540	* generated/any_l16.c: Regenerate.
541	* generated/eoshift1_8.c: Regenerate.
542	* generated/pow_r8_i8.c: Regenerate.
543	* generated/reshape_r16.c: Regenerate.
544	* generated/pow_i4_i16.c: Regenerate.
545	* generated/maxval_i2.c: Regenerate.
546	* generated/product_r4.c: Regenerate.
547	* generated/maxloc1_8_i4.c: Regenerate.
548	* generated/exponent_r16.c: Regenerate.
549	* generated/maxloc0_4_r4.c: Regenerate.
550	* generated/fraction_r16.c: Regenerate.
551	* generated/in_unpack_i8.c: Regenerate.
552	* generated/matmul_r8.c: Regenerate.
553	* generated/product_i2.c: Regenerate.
554	* generated/fraction_r4.c: Regenerate.
555	* generated/minloc0_4_r16.c: Regenerate.
556	* generated/reshape_c4.c: Regenerate.
557	* generated/minloc0_4_i1.c: Regenerate.
558	* generated/maxloc0_4_r16.c: Regenerate.
559	* generated/maxloc0_4_i2.c: Regenerate.
560	* generated/minloc1_8_r16.c: Regenerate.
561	* generated/maxloc1_8_r16.c: Regenerate.
562	* generated/set_exponent_r8.c: Regenerate.
563	* generated/in_unpack_i16.c: Regenerate.
564	* generated/transpose_c16.c: Regenerate.
565	* generated/maxloc0_8_i8.c: Regenerate.
566	* generated/pow_c4_i8.c: Regenerate.
567	* generated/sum_r16.c: Regenerate.
568	* generated/sum_i1.c: Regenerate.
569	* generated/minloc1_4_r8.c: Regenerate.
570	* generated/transpose_r10.c: Regenerate.
571	* generated/pow_i8_i4.c: Regenerate.
572	* generated/maxloc1_16_r16.c: Regenerate.
573	* generated/minloc1_16_i4.c: Regenerate.
574	* generated/maxloc1_16_i4.c: Regenerate.
575	* generated/minloc0_16_i8.c: Regenerate.
576	* generated/maxloc0_16_i8.c: Regenerate.
577	* generated/nearest_r8.c: Regenerate.
578	* generated/spacing_r16.c: Regenerate.
579	* generated/transpose_i8.c: Regenerate.
580	* generated/count_16_l16.c: Regenerate.
581	* generated/maxval_r16.c: Regenerate.
582	* generated/count_8_l8.c: Regenerate.
583	* generated/product_c10.c: Regenerate.
584	* generated/minloc1_8_i4.c: Regenerate.
585	* generated/minloc0_16_i16.c: Regenerate.
586	* generated/matmul_r16.c: Regenerate.
587	* generated/eoshift1_16.c: Regenerate.
588	* generated/minloc0_4_r4.c: Regenerate.
589	* generated/pow_c16_i16.c: Regenerate.
590	* generated/set_exponent_r10.c: Regenerate.
591	* generated/pow_i16_i16.c: Regenerate.
592	* generated/product_c4.c: Regenerate.
593	* generated/sum_r4.c: Regenerate.
594	* generated/pow_c16_i4.c: Regenerate.
595	* generated/rrspacing_r10.c: Regenerate.
596	* generated/in_pack_c16.c: Regenerate.
597	* generated/minloc0_4_i2.c: Regenerate.
598	* generated/maxloc0_8_i1.c: Regenerate.
599	* generated/reshape_i4.c: Regenerate.
600	* generated/minloc0_8_i8.c: Regenerate.
601	* generated/matmul_c8.c: Regenerate.
602	* generated/spacing_r4.c: Regenerate.
603	* generated/in_pack_c4.c: Regenerate.
604	* generated/all_l16.c: Regenerate.
605	* generated/minloc1_16_r10.c: Regenerate.
606	* generated/sum_i2.c: Regenerate.
607	* generated/minloc0_16_i1.c: Regenerate.
608	* generated/reshape_c16.c: Regenerate.
609	* generated/maxloc0_16_i1.c: Regenerate.
610	* generated/maxloc1_8_r8.c: Regenerate.
611	* generated/minval_i16.c: Regenerate.
612	* generated/reshape_r10.c: Regenerate.
613	* generated/exponent_r10.c: Regenerate.
614	* generated/maxval_i4.c: Regenerate.
615	* generated/any_l4.c: Regenerate.
616	* generated/minval_i8.c: Regenerate.
617	* generated/maxloc1_4_i8.c: Regenerate.
618	* generated/fraction_r10.c: Regenerate.
619	* generated/maxloc0_16_i16.c: Regenerate.
620	* generated/shape_i4.c: Regenerate.
621	* generated/pow_r16_i8.c: Regenerate.
622	* generated/maxloc0_8_r4.c: Regenerate.
623	* generated/rrspacing_r8.c: Regenerate.
624	* generated/pow_c10_i4.c: Regenerate.
625	* generated/minloc1_4_i16.c: Regenerate.
626	* generated/minloc0_4_r10.c: Regenerate.
627	* generated/maxloc1_4_i16.c: Regenerate.
628	* generated/minloc0_8_i16.c: Regenerate.
629	* generated/maxloc0_4_r10.c: Regenerate.
630	* generated/maxloc0_8_i16.c: Regenerate.
631	* generated/minloc1_8_r10.c: Regenerate.
632	* generated/product_i4.c: Regenerate.
633	* generated/minloc0_16_r4.c: Regenerate.
634	* generated/sum_c16.c: Regenerate.
635	* generated/maxloc1_8_r10.c: Regenerate.
636	* generated/maxloc0_16_r4.c: Regenerate.
637	* generated/transpose_c10.c: Regenerate.
638	* generated/minloc1_16_r8.c: Regenerate.
639	* generated/minloc0_8_i1.c: Regenerate.
640	* generated/maxloc0_4_i4.c: Regenerate.
641	* generated/transpose_r4.c: Regenerate.
642	* generated/maxloc1_16_r8.c: Regenerate.
643	* generated/pow_i16_i8.c: Regenerate.
644	* generated/cshift1_4.c: Regenerate.
645	* generated/maxloc0_8_i2.c: Regenerate.
646	* generated/sum_r10.c: Regenerate.
647	* generated/nearest_r16.c: Regenerate.
648	* generated/sum_c4.c: Regenerate.
649	* generated/maxloc1_16_r10.c: Regenerate.
650	* generated/count_4_l16.c: Regenerate.
651	* generated/pow_c8_i8.c: Regenerate.
652	* generated/matmul_i8.c: Regenerate.
653	* generated/in_pack_i4.c: Regenerate.
654	* generated/pow_i4_i8.c: Regenerate.
655	* generated/minloc0_16_i2.c: Regenerate.
656	* generated/minloc1_8_r8.c: Regenerate.
657	* generated/maxloc0_16_i2.c: Regenerate.
658	* generated/exponent_r4.c: Regenerate.
659	* generated/spacing_r10.c: Regenerate.
660	* generated/matmul_c16.c: Regenerate.
661	* generated/pow_c4_i16.c: Regenerate.
662	* generated/maxval_r10.c: Regenerate.
663	* generated/count_4_l4.c: Regenerate.
664	* generated/shape_i16.c: Regenerate.
665	* generated/minval_i1.c: Regenerate.
666	* generated/maxloc1_4_i1.c: Regenerate.
667	* generated/matmul_r10.c: Regenerate.
668	* generated/minloc1_4_i8.c: Regenerate.
669	* generated/pow_r10_i8.c: Regenerate.
670	* generated/minloc0_8_r4.c: Regenerate.
671	* generated/in_unpack_c4.c: Regenerate.
672	* generated/matmul_l4.c: Regenerate.
673	* generated/product_i16.c: Regenerate.
674	* generated/minloc0_16_r16.c: Regenerate.
675	* generated/reshape_r8.c: Regenerate.
676	* generated/pow_r10_i16.c: Regenerate.
677	* generated/all_l4.c: Regenerate.
678	* generated/in_pack_c10.c: Regenerate.
679	* generated/minloc0_4_i4.c: Regenerate.
680	* generated/minloc0_8_i2.c: Regenerate.
681	* generated/matmul_i1.c: Regenerate.
682	* generated/reshape_c10.c: Regenerate.
683	* generated/minval_r4.c: Regenerate.
684	* generated/maxloc1_4_r4.c: Regenerate.
685	* generated/pow_r8_i16.c: Regenerate.
686	* generated/sum_i4.c: Regenerate.
687	* generated/maxval_r8.c: Regenerate.
688	* generated/count_16_l8.c: Regenerate.
689	* generated/transpose_c4.c: Regenerate.
690	* generated/eoshift1_4.c: Regenerate.
691	* generated/eoshift3_8.c: Regenerate.
692	* generated/minval_r16.c: Regenerate.
693	* generated/minloc1_4_i1.c: Regenerate.
694	* generated/minval_i2.c: Regenerate.
695	* generated/maxloc1_4_i2.c: Regenerate.
696	* generated/pow_i8_i16.c: Regenerate.
697	* generated/product_r8.c: Regenerate.
698	* generated/maxloc1_8_i8.c: Regenerate.
699	* generated/maxloc0_4_r8.c: Regenerate.
700	* generated/maxloc0_16_r16.c: Regenerate.
701	* generated/in_unpack_i4.c: Regenerate.
702	* generated/matmul_r4.c: Regenerate.
703	* generated/sum_c10.c: Regenerate.
704	* generated/minloc1_4_r16.c: Regenerate.
705	* generated/fraction_r8.c: Regenerate.
706	* generated/maxloc1_4_r16.c: Regenerate.
707	* generated/set_exponent_r4.c: Regenerate.
708	* generated/minloc0_8_r16.c: Regenerate.
709	* generated/in_unpack_c16.c: Regenerate.
710	* generated/reshape_c8.c: Regenerate.
711	* generated/maxloc0_8_r16.c: Regenerate.
712	* generated/nearest_r10.c: Regenerate.
713	* generated/maxloc0_8_i4.c: Regenerate.
714	* generated/pow_c4_i4.c: Regenerate.
715	* generated/matmul_i2.c: Regenerate.
716	* generated/minloc1_4_r4.c: Regenerate.
717	* generated/transpose_i16.c: Regenerate.
718	* generated/matmul_c10.c: Regenerate.
719	* generated/minloc0_16_i4.c: Regenerate.
720	* generated/maxloc0_16_i4.c: Regenerate.
721	* generated/pow_i8_i8.c: Regenerate.
722	* generated/nearest_r4.c: Regenerate.
723	* generated/minloc1_16_i8.c: Regenerate.
724	* generated/maxloc1_16_i8.c: Regenerate.
725	* generated/transpose_i4.c: Regenerate.
726	* generated/count_8_l4.c: Regenerate.
727	* generated/minloc1_4_i2.c: Regenerate.
728	* generated/matmul_l16.c: Regenerate.
729	* generated/maxloc1_8_i1.c: Regenerate.
730	* generated/minloc0_16_r10.c: Regenerate.
731	* generated/minloc1_8_i8.c: Regenerate.
732	* generated/minloc0_4_r8.c: Regenerate.
733	* generated/product_r16.c: Regenerate.
734	* generated/product_c8.c: Regenerate.
735	* generated/pow_r16_i16.c: Regenerate.
736	* generated/sum_r8.c: Regenerate.
737	* generated/pow_c16_i8.c: Regenerate.
738	* generated/in_pack_i16.c: Regenerate.
739	* generated/minloc0_8_i4.c: Regenerate.
740	* generated/matmul_c4.c: Regenerate.
741	* generated/minloc1_16_i16.c: Regenerate.
742	* generated/reshape_i8.c: Regenerate.
743	* generated/spacing_r8.c: Regenerate.
744	* generated/in_pack_c8.c: Regenerate.
745	* generated/maxloc1_8_r4.c: Regenerate.
746	* generated/minloc1_16_i1.c: Regenerate.
747	* generated/maxloc1_16_i1.c: Regenerate.
748	* generated/reshape_i16.c: Regenerate.
749	* generated/minval_r10.c: Regenerate.
750	* generated/pow_r4_i8.c: Regenerate.
751	* generated/minloc1_8_i1.c: Regenerate.
752	* generated/minval_i4.c: Regenerate.
753	* generated/maxloc1_4_i4.c: Regenerate.
754	* generated/maxloc1_8_i2.c: Regenerate.
755	* generated/maxval_i8.c: Regenerate.
756	* generated/eoshift3_16.c: Regenerate.
757	* generated/any_l8.c: Regenerate.
758	* generated/maxloc0_16_r10.c: Regenerate.
759	* generated/rrspacing_r4.c: Regenerate.
760	* generated/shape_i8.c: Regenerate.
761	* generated/maxloc0_8_r8.c: Regenerate.
762	* generated/minloc0_4_i16.c: Regenerate.
763	* generated/maxloc0_4_i16.c: Regenerate.
764	* generated/minloc1_4_r10.c: Regenerate.
765	* generated/minloc1_8_i16.c: Regenerate.
766	* generated/pow_c10_i8.c: Regenerate.
767	* generated/maxloc1_4_r10.c: Regenerate.
768	* generated/maxloc1_8_i16.c: Regenerate.
769	* generated/in_unpack_c10.c: Regenerate.
770	* generated/minloc0_8_r10.c: Regenerate.
771	* generated/maxloc0_8_r10.c: Regenerate.
772	* generated/minloc1_16_r4.c: Regenerate.
773	* generated/maxloc1_16_r4.c: Regenerate.
774	* generated/minloc0_16_r8.c: Regenerate.
775	* generated/pow_i16_i4.c: Regenerate.
776	* generated/product_i8.c: Regenerate.
777	* generated/maxloc0_16_r8.c: Regenerate.
778	* generated/sum_i16.c: Regenerate.
779	* generated/maxloc0_4_i8.c: Regenerate.
780	* generated/transpose_r8.c: Regenerate.
781	* generated/cshift1_8.c: Regenerate.
782	* generated/maxloc1_16_i16.c: Regenerate.
783	* generated/matmul_i4.c: Regenerate.
784	* generated/pow_c8_i4.c: Regenerate.
785	* generated/pow_i4_i4.c: Regenerate.
786	* generated/minloc1_8_r4.c: Regenerate.
787	* generated/sum_c8.c: Regenerate.
788	* generated/count_8_l16.c: Regenerate.
789	* generated/minloc1_16_i2.c: Regenerate.
790	* generated/maxloc1_16_i2.c: Regenerate.
791	* generated/in_pack_i8.c: Regenerate.
792	* generated/transpose_r16.c: Regenerate.
793	* generated/maxval_i16.c: Regenerate.
794	* generated/exponent_r8.c: Regenerate.
795	* generated/matmul_i16.c: Regenerate.
796	* generated/count_4_l8.c: Regenerate.
797	* generated/pow_c8_i16.c: Regenerate.
798	* generated/maxval_i1.c: Regenerate.
799	* generated/minloc1_4_i4.c: Regenerate.
800	* generated/minloc1_8_i2.c: Regenerate.
801	* generated/pow_c10_i16.c: Regenerate.
802	* generated/product_c16.c: Regenerate.
803	* generated/reshape_r4.c: Regenerate.
804	* generated/in_unpack_c8.c: Regenerate.
805	* generated/minloc0_8_r8.c: Regenerate.
806	* generated/matmul_l8.c: Regenerate.
807	* generated/product_r10.c: Regenerate.
808	* generated/set_exponent_r16.c: Regenerate.
809	* generated/cshift1_16.c: Regenerate.
810	* generated/product_i1.c: Regenerate.
811	* generated/all_l8.c: Regenerate.
812	* generated/maxloc0_4_i1.c: Regenerate.
813	* generated/rrspacing_r16.c: Regenerate.
814	* generated/minloc0_4_i8.c: Regenerate.
815	* generated/pow_r4_i16.c: Regenerate.
816	* generated/count_16_l4.c: Regenerate.
817	* generated/maxval_r4.c: Regenerate.
818
8192007-08-30  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
820
821	PR libfortran/33225
822	* io/write.c: Revert changes from patch of 2007-08-27.
823	* io/write_float.def: Remove file, reverting addition.
824
8252007-08-29  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
826
827	* runtime/memory.c (internal_realloc, allocate, allocate_array,
828	deallocate): Remove functions.
829	* gfortran.map (_gfortran_allocate, _gfortran_allocate_array,
830	_gfortran_deallocate, _gfortran_internal_realloc): Remove symbols.
831	* libgfortran.h (error_codes): Add comment.
832
8332007-08-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
834
835	PR libfortran/33055
836	Revert previous patch.
837
8382007-08-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
839
840	* io/write.c (stdbool.h): Add include. (sign_t): Move typedef to
841	new file write_float.def. Include write_float.def.
842	(extract_real): Delete. (calculate_sign): Delete.
843	(calculate_exp): Delete. (calculate_G_format): Delete.
844	(output_float): Delete. (write_float): Delete.
845	* io/write_float.def (calculate_sign): Added.
846	(output_float): Refactored to be independent of kind and added to this
847	file for inclusion. (write_infnan): New function to write "Infinite"
848	or "NaN" depending on flags passed, independent of kind.
849	(CALCULATE_EXP): New macro to build kind specific functions. Use it.
850	(OUTPUT_FLOAT_FMT_G): New macro, likewise. Use it.
851	(DTOA, DTOAL): Macros to implement "decimal to ascii".
852	(WRITE_FLOAT): New macro for kind specific write_float functions.
853	(write_float): Revised function to determine kind and use WRITE_FLOAT
854	to implement kind specific output.
855
8562007-08-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
857
858	PR libfortran/33055
859	* io/inquire.c (inquire_via_unit):  If inquiring by unit, check for
860	an error condition from the IOSTAT variable and set EXIST to false if
861	there was a bad unit number.
862
8632007-08-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
864
865	PR fortran/32972
866	* libgfortran.h:  Remove GFOR_POINTER_L8_TO_L4 macro.
867	Add GFOR_POINTER_TO_L1 macro.
868	* m4/iforeach.m4(`m'name`'rtype_qual`_'atype_code):
869	Change argument 'mask' to gfc_array_l1.  Adjust prototype.
870	Change mask pointer to GFC_LOGICAL_1.  Multiply strides
871	by kind of mask
872	* m4/ifunction.m4:  Likewise.
873	* intrinsics/pack_generic.c(pack_internal):  Likewise.
874	* intrinsics/unpack_generic.c(unpack_internal):  Likewise.
875	* m4/matmull.m4:  Switch to GFC_LOGICAL_1.  Multiply strides by
876	kind of logical arguments a and b.
877	* generated/matmul_l16.c: Regenerated.
878	* generated/matmul_l4.c: Regenerated.
879	* generated/matmul_l8.c: Regenerated.
880	* generated/maxloc0_16_i1.c: Regenerated.
881	* generated/maxloc0_16_i16.c: Regenerated.
882	* generated/maxloc0_16_i2.c: Regenerated.
883	* generated/maxloc0_16_i4.c: Regenerated.
884	* generated/maxloc0_16_i8.c: Regenerated.
885	* generated/maxloc0_16_r10.c: Regenerated.
886	* generated/maxloc0_16_r16.c: Regenerated.
887	* generated/maxloc0_16_r4.c: Regenerated.
888	* generated/maxloc0_16_r8.c: Regenerated.
889	* generated/maxloc0_4_i1.c: Regenerated.
890	* generated/maxloc0_4_i16.c: Regenerated.
891	* generated/maxloc0_4_i2.c: Regenerated.
892	* generated/maxloc0_4_i4.c: Regenerated.
893	* generated/maxloc0_4_i8.c: Regenerated.
894	* generated/maxloc0_4_r10.c: Regenerated.
895	* generated/maxloc0_4_r16.c: Regenerated.
896	* generated/maxloc0_4_r4.c: Regenerated.
897	* generated/maxloc0_4_r8.c: Regenerated.
898	* generated/maxloc0_8_i1.c: Regenerated.
899	* generated/maxloc0_8_i16.c: Regenerated.
900	* generated/maxloc0_8_i2.c: Regenerated.
901	* generated/maxloc0_8_i4.c: Regenerated.
902	* generated/maxloc0_8_i8.c: Regenerated.
903	* generated/maxloc0_8_r10.c: Regenerated.
904	* generated/maxloc0_8_r16.c: Regenerated.
905	* generated/maxloc0_8_r4.c: Regenerated.
906	* generated/maxloc0_8_r8.c: Regenerated.
907	* generated/maxloc1_16_i1.c: Regenerated.
908	* generated/maxloc1_16_i16.c: Regenerated.
909	* generated/maxloc1_16_i2.c: Regenerated.
910	* generated/maxloc1_16_i4.c: Regenerated.
911	* generated/maxloc1_16_i8.c: Regenerated.
912	* generated/maxloc1_16_r10.c: Regenerated.
913	* generated/maxloc1_16_r16.c: Regenerated.
914	* generated/maxloc1_16_r4.c: Regenerated.
915	* generated/maxloc1_16_r8.c: Regenerated.
916	* generated/maxloc1_4_i1.c: Regenerated.
917	* generated/maxloc1_4_i16.c: Regenerated.
918	* generated/maxloc1_4_i2.c: Regenerated.
919	* generated/maxloc1_4_i4.c: Regenerated.
920	* generated/maxloc1_4_i8.c: Regenerated.
921	* generated/maxloc1_4_r10.c: Regenerated.
922	* generated/maxloc1_4_r16.c: Regenerated.
923	* generated/maxloc1_4_r4.c: Regenerated.
924	* generated/maxloc1_4_r8.c: Regenerated.
925	* generated/maxloc1_8_i1.c: Regenerated.
926	* generated/maxloc1_8_i16.c: Regenerated.
927	* generated/maxloc1_8_i2.c: Regenerated.
928	* generated/maxloc1_8_i4.c: Regenerated.
929	* generated/maxloc1_8_i8.c: Regenerated.
930	* generated/maxloc1_8_r10.c: Regenerated.
931	* generated/maxloc1_8_r16.c: Regenerated.
932	* generated/maxloc1_8_r4.c: Regenerated.
933	* generated/maxloc1_8_r8.c: Regenerated.
934	* generated/maxval_i1.c: Regenerated.
935	* generated/maxval_i16.c: Regenerated.
936	* generated/maxval_i2.c: Regenerated.
937	* generated/maxval_i4.c: Regenerated.
938	* generated/maxval_i8.c: Regenerated.
939	* generated/maxval_r10.c: Regenerated.
940	* generated/maxval_r16.c: Regenerated.
941	* generated/maxval_r4.c: Regenerated.
942	* generated/maxval_r8.c: Regenerated.
943	* generated/minloc0_16_i1.c: Regenerated.
944	* generated/minloc0_16_i16.c: Regenerated.
945	* generated/minloc0_16_i2.c: Regenerated.
946	* generated/minloc0_16_i4.c: Regenerated.
947	* generated/minloc0_16_i8.c: Regenerated.
948	* generated/minloc0_16_r10.c: Regenerated.
949	* generated/minloc0_16_r16.c: Regenerated.
950	* generated/minloc0_16_r4.c: Regenerated.
951	* generated/minloc0_16_r8.c: Regenerated.
952	* generated/minloc0_4_i1.c: Regenerated.
953	* generated/minloc0_4_i16.c: Regenerated.
954	* generated/minloc0_4_i2.c: Regenerated.
955	* generated/minloc0_4_i4.c: Regenerated.
956	* generated/minloc0_4_i8.c: Regenerated.
957	* generated/minloc0_4_r10.c: Regenerated.
958	* generated/minloc0_4_r16.c: Regenerated.
959	* generated/minloc0_4_r4.c: Regenerated.
960	* generated/minloc0_4_r8.c: Regenerated.
961	* generated/minloc0_8_i1.c: Regenerated.
962	* generated/minloc0_8_i16.c: Regenerated.
963	* generated/minloc0_8_i2.c: Regenerated.
964	* generated/minloc0_8_i4.c: Regenerated.
965	* generated/minloc0_8_i8.c: Regenerated.
966	* generated/minloc0_8_r10.c: Regenerated.
967	* generated/minloc0_8_r16.c: Regenerated.
968	* generated/minloc0_8_r4.c: Regenerated.
969	* generated/minloc0_8_r8.c: Regenerated.
970	* generated/minloc1_16_i1.c: Regenerated.
971	* generated/minloc1_16_i16.c: Regenerated.
972	* generated/minloc1_16_i2.c: Regenerated.
973	* generated/minloc1_16_i4.c: Regenerated.
974	* generated/minloc1_16_i8.c: Regenerated.
975	* generated/minloc1_16_r10.c: Regenerated.
976	* generated/minloc1_16_r16.c: Regenerated.
977	* generated/minloc1_16_r4.c: Regenerated.
978	* generated/minloc1_16_r8.c: Regenerated.
979	* generated/minloc1_4_i1.c: Regenerated.
980	* generated/minloc1_4_i16.c: Regenerated.
981	* generated/minloc1_4_i2.c: Regenerated.
982	* generated/minloc1_4_i4.c: Regenerated.
983	* generated/minloc1_4_i8.c: Regenerated.
984	* generated/minloc1_4_r10.c: Regenerated.
985	* generated/minloc1_4_r16.c: Regenerated.
986	* generated/minloc1_4_r4.c: Regenerated.
987	* generated/minloc1_4_r8.c: Regenerated.
988	* generated/minloc1_8_i1.c: Regenerated.
989	* generated/minloc1_8_i16.c: Regenerated.
990	* generated/minloc1_8_i2.c: Regenerated.
991	* generated/minloc1_8_i4.c: Regenerated.
992	* generated/minloc1_8_i8.c: Regenerated.
993	* generated/minloc1_8_r10.c: Regenerated.
994	* generated/minloc1_8_r16.c: Regenerated.
995	* generated/minloc1_8_r4.c: Regenerated.
996	* generated/minloc1_8_r8.c: Regenerated.
997	* generated/minval_i1.c: Regenerated.
998	* generated/minval_i16.c: Regenerated.
999	* generated/minval_i2.c: Regenerated.
1000	* generated/minval_i4.c: Regenerated.
1001	* generated/minval_i8.c: Regenerated.
1002	* generated/minval_r10.c: Regenerated.
1003	* generated/minval_r16.c: Regenerated.
1004	* generated/minval_r4.c: Regenerated.
1005	* generated/minval_r8.c: Regenerated.
1006	* generated/product_c10.c: Regenerated.
1007	* generated/product_c16.c: Regenerated.
1008	* generated/product_c4.c: Regenerated.
1009	* generated/product_c8.c: Regenerated.
1010	* generated/product_i1.c: Regenerated.
1011	* generated/product_i16.c: Regenerated.
1012	* generated/product_i2.c: Regenerated.
1013	* generated/product_i4.c: Regenerated.
1014	* generated/product_i8.c: Regenerated.
1015	* generated/product_r10.c: Regenerated.
1016	* generated/product_r16.c: Regenerated.
1017	* generated/product_r4.c: Regenerated.
1018	* generated/product_r8.c: Regenerated.
1019	* generated/sum_c10.c: Regenerated.
1020	* generated/sum_c16.c: Regenerated.
1021	* generated/sum_c4.c: Regenerated.
1022	* generated/sum_c8.c: Regenerated.
1023	* generated/sum_i1.c: Regenerated.
1024	* generated/sum_i16.c: Regenerated.
1025	* generated/sum_i2.c: Regenerated.
1026	* generated/sum_i4.c: Regenerated.
1027	* generated/sum_i8.c: Regenerated.
1028	* generated/sum_r10.c: Regenerated.
1029	* generated/sum_r16.c: Regenerated.
1030	* generated/sum_r4.c: Regenerated.
1031	* generated/sum_r8.c: Regenerated.
1032
10332007-08-23  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1034
1035	PR libfortran/23138
1036	* acinclude.m4 (LIBGFOR_CHECK_MINGW_SNPRINTF): New check.
1037	* configure.ac: Use LIBGFOR_CHECK_MINGW_SNPRINTF.
1038	* libgfortran.h: If HAVE_MINGW_SNPRINTF is true, use __mingw_snprintf
1039	instead of snprintf.
1040	* config.h.in: Regenerate.
1041	* configure: Regenerate.
1042
10432007-08-22  Bernhard Fischer  <rep.dot.nop@gmail.com>
1044
1045	* libgfortran/Makefile.am (AM_CPPFLAGS): Commentary typo fix.
1046
10472007-08-17  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1048
1049	PR fortran/33079
1050	* intrinsics/string_intrinsics.c (string_trim, string_minmax): Fix
1051	the zero-length result case.
1052
10532007-08-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1054
1055	PR fortran/33077
1056	* intrinsics/random.c (random_seed_i8): Fix code logic.
1057
10582007-08-13  Danny Smith  <dannysmit@users.sourceforge.net>
1059
1060	* acinclude.m4 (GTHREAD_USE_WEAK) Define to 0 for mingw32.
1061	* configure: Regenerate.
1062
10632007-08-12  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1064
1065	PR fortran/30964
1066	PR fortran/33054
1067	* intrinsics/random.c (random_seed): Rename into random_seed_i4.
1068	(random_seed_i8): New function.
1069	* gfortran.map (GFORTRAN_1.0): Remove _gfortran_random_seed,
1070	add _gfortran_random_seed_i4 and _gfortran_random_seed_i8.
1071	* libgfortran.h (iexport_proto): Replace random_seed by
1072	random_seed_i4 and random_seed_i8.
1073	* runtime/main.c (init): Call the new random_seed_i4.
1074
10752007-08-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1076	    Tobias Burnus  <burnus@gcc.gnu.org>
1077
1078	PR fortran/31189
1079	* runtime/backtrace.c (show_backtrace): Skip _gfortrani_handler
1080	when displaying backtrace.
1081	* runtime/compile_options.c: Include <signal.h>.
1082	(handler): New function.
1083	(set_options): Set signal handlers for backtrace.
1084	* libgfortran.h (handler): Add prototype.
1085
10862007-08-11  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1087
1088	* intrinsics/string_intrinsics.c (compare_string): Return an int.
1089	* libgfortran.h (compare_string): Likewise.
1090
10912007-08-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1092
1093	PR fortran/31270
1094	* runtime/error.c (runtime_error_at): Add a variable number of
1095	arguments.
1096	* libgfortran.h (runtime_error_at): Update prototype.
1097
10982007-08-10  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1099
1100	PR fortran/32933
1101	* intrinsics/associated.c: Change return type of associated into
1102	a C int.
1103
11042007-08-10  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1105
1106	PR libfortran/33039
1107	* io/list_read.c (find_nml_name): Check for a space after a namelist
1108	name match.
1109
11102007-08-09  Tobias Burnus  <burnus@net-b.de>
1111
1112	PR fortran/32987
1113	* io/format.c (next_char): Treat '\t' as ' ' in format specification.
1114
11152007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1116
1117	PR fortran/30947
1118	* intrinsics/signal.c: Create specific versions of alarm_sub and
1119	alarm_sub_int according to the integer kind of the last argument.
1120	* gfortran.map (GFORTRAN_1.0): Remove _gfortran_alarm_sub and
1121	_gfortran_alarm_sub_int, add _gfortran_alarm_sub_i4,
1122	_gfortran_alarm_sub_i8, _gfortran_alarm_sub_int_i4 and
1123	_gfortran_alarm_sub_int_i8.
1124
11252007-08-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1126
1127	PR fortran/29828
1128	* intrinsics/string_intrinsics.c (string_minmax): New function
1129	and prototype.
1130	* gfortran.map (GFORTRAN_1.0): Add _gfortran_string_minmax
1131
11322007-08-05  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1133
1134	PR fortran/31202
1135	* intrinsics/c99_functions.c (roundl): Provide fallback
1136	implementation for systems without ceill.
1137	* c99_protos.h (roundl): Define prototype in all cases.
1138
11392007-08-03  Thomas Koenig  <tkoenig@gcc.gnu.org>
1140
1141	PR libfortran/32977
1142	* io/unix.c:  If there is no vsnprintf, use vsprintf and issue
1143	a fatal error when a buffer overrun occurs.
1144
11452007-08-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1146
1147	PR fortran/31202
1148	* intrinsics/c99_functions.c (roundl,lroundf,lround,lroundl,
1149	llroundf,llround,llroundl): New functions.
1150	* c99_protos.h (roundl,lroundf,lround,lroundl,llroundf,llround,
1151	llroundl): New prototypes.
1152	* configure.ac: Check for lroundf, lround, lroundl, llroundf,
1153	llround and llroundl.
1154	* configure: Regenerate.
1155	* Makefile.in: Regenerate.
1156	* config.h.in: Regenerate.
1157
11582007-07-30  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1159
1160	* libgfortran.h: Include <stdarg.h>.
1161
11622007-07-29  Thomas Koenig  <tkoenig@gcc.gnu.org>
1163
1164	PR libfortran/32858
1165	PR libfortran/30814
1166	* configure.ac:  Added checks for presence of stdio.h and
1167	stdarg.h.  Test presence of vsnprintf().
1168	* configure: Regenerated.
1169	* config.h.in:  Regenerated.
1170	* libgfortran.h:  Include <stdio.h>.  Add printf attribute to
1171	prototype of runtime_error.  Remove prototype for st_sprintf.
1172	Add prototype for st_vprintf.
1173	* runtime/main.c (store_exec_path):  Replace st_sprintf by sprintf.
1174	* runtime/error.c (st_sprintf):  Remove.
1175	(runtime_error):  Rewrite as a variadic function.  Call
1176	st_vprintf().
1177	* intrinsics/pack_generic.c:  Output extents of LHS and RHS for
1178	bounds error.
1179	* io/open.c (new_unit):  Replace st_sprintf by sprintf.
1180	* io/list_read.c (convert_integer):  Likewise.
1181	(parse_repeat):  Likewise.
1182	(read_logical):  Likewise.
1183	(read_character):  Likewise.
1184	(parse_real):  Likewise.
1185	(read_real):  Likewise.
1186	(check_type):  Likewise.
1187	(nml_parse_qualifyer):  Likewise.
1188	(nml_read_obj):  Likewise.
1189	(nml_get_ojb_data):  Likewise.
1190	* io/unix.c (init_error_stream):  Remove.
1191	(tempfile):  Replace st_sprintf by sprintf.
1192	(st_vprintf):  New function.
1193	(st_printf):  Rewrite to call st_vprintf.
1194	* io/transfer.c (require_type):  Replace st_sprintf by sprintf.
1195	* io/format.c (format_error):  Likewise.
1196	* io/write.c (nml_write_obj):  Likewise.
1197
11982007-07-27  Janne Blomqvist  <jb@gcc.gnu.org>
1199
1200	* io/transfer.c (st_set_nml_var_dim): Use index_type instead of
1201	GFC_INTEGER_4 for array descriptor triplets.
1202
12032007-07-27  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1204
1205	* io/unix.c (stream_ttyname): Mark argument as potentialy unused.
1206
12072007-07-27  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1208
1209	PR fortran/32035
1210	* runtime/select.c (select_string): Adjust prototype and function
1211	so that the return value is an integer, not a pointer.
1212
12132007-07-24  Tobias Burnus  <burnus@net-b.de>
1214
1215	* libgfortran.h:  Add bounds_check to compile_options_t.
1216
12172007-07-24  Thomas Koenig  <tkoenig@gcc.gnu.org>
1218
1219	PR fortran/30814
1220	* libgfortran.h:  Add bounds_check to compile_options_t.
1221	* runtime/compile_options.c (set_options):  Add handling
1222	of compile_options.bounds_check.
1223	* intrinsics/pack_generic.c (pack_internal):  Also determine
1224	the number of elements if compile_options.bounds_check is
1225	true.  Raise runtime error if a different array shape is
1226	detected.
1227
12282007-07-23  Christopher D. Rickett  <crickett@lanl.gov>
1229
1230	PR fortran/32600
1231	* intrinsics/iso_c_binding.c (c_funloc): Remove.
1232	* intrinsics/iso_c_binding.h: Remove c_funloc.
1233	* gfortran.map: Ditto.
1234
12352007-07-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1236
1237	* io/read.c (convert_real): Generate error only on EINVAL.
1238
12392007-07-21  Christopher D. Rickett  <crickett@lanl.gov>
1240
1241	PR fortran/32627
1242	* libgfortran/intrinsics/iso_c_generated_procs.c: Add c_f_pointer
1243	for character/string arguments.
1244	* libgfortran/intrinsic/iso_c_binding.c (c_f_pointer_u0): Allow
1245	the optional SHAPE arg to be any valid integer kind.
1246	* libgfortran/gfortran.map: Add c_f_pointer_s0.
1247	* libgfortran/mk-kinds-h.sh: Save smallest integer kind as default
1248	character kind.
1249	* libgfortran/intrinsics/iso_c_generated_procs.c: Add versions of
1250	c_f_pointer for complex and logical types.
1251	* libgfortran/gfortran.map: Add c_f_pointer versions for logical
1252	and complex types.
1253
12542007-07-19  Christopher D. Rickett  <crickett@lanl.gov>
1255
1256	PR fortran/32600
1257	* libgfortran/intrinsics/iso_c_binding.c: Remove C_LOC.
1258	* libgfortran/intrinsics/iso_c_binding.h: Ditto.
1259	* libgfortran/gfortran.map: Ditto.
1260
12612007-07-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1262	    Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1263
1264	PR fortran/32611
1265	* runtime/compile_options.c (set_std): Remove.
1266	(set_options): New function.
1267	(init_compile_options): Add initialization for -fsign-zero option.
1268	* gfortran.map (GFORTRAN_1.0): Rename _gfortran_set_std into
1269	_gfortran_set_options.
1270	* libgfortran.h (compile_options_t): Add sign_zero field.
1271	* io/write.c (output_float): Use the sign bit of the value to determine
1272	if a negative sign should be emitted for zero values.  Do not emit the
1273	negative sign for zero if -fno-sign-zero was set during compile.
1274
12752007-07-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1276
1277	PR libgfortran/32752
1278	* io/unix.c (unix_stream): Move buffer pointer adjacent to
1279	small_buffer.
1280	* io/transfer.c (formatted_transfer_scalar): If stream I/O, set
1281	bytes_used to zero. Fix off by one error in calculation of pos and
1282	skips. Eliminate duplicate pending_spaces check.
1283
12842007-07-15  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1285
1286	PR fortran/32357
1287	* intrinsics/mvbits.c: Change prototype so that FROMPOS, LEN and
1288	TOPOS arguments are C int.
1289
12902007-07-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1291
1292	PR libgfortran/32702
1293	* io/unix.c (unix_stream): Restore buffer pointer and small_buffer.
1294	(fd_alloc): If the number of bytes needed is greater than the default
1295	BUFFER_SIZE, allocate a new buffer large enough.  Free the old buffer
1296	if necessary. (fd_sfree): Restore use of buffer pointer.
1297	(fd_close): Likewise. (fd_open): Likewise.
1298	(init_error_stream): Likewise.
1299
13002007-07-09  Thomas Koenig  <tkoenig@gcc.gnu.org>
1301
1302	PR libfortran/32336
1303	* m4/matmul.m4:  When the dimension of b is incorrect,
1304	raise a runtime error instead of a failed assertion.
1305	* generated/matmul_i1.c:  Regenerated.
1306	* generated/matmul_i2.c:  Regenerated.
1307	* generated/matmul_i4.c:  Regenerated.
1308	* generated/matmul_i8.c:  Regenerated.
1309	* generated/matmul_i16.c:  Regenerated.
1310	* generated/matmul_r4.c:  Regenerated.
1311	* generated/matmul_r8.c:  Regenerated.
1312	* generated/matmul_r10.c:  Regenerated.
1313	* generated/matmul_r16.c:  Regenerated.
1314
13152007-07-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1316
1317	PR libgfortran/32678
1318	* io/transfer.c (formatted_transfer_scalar): Don't allow
1319	pending_spaces to go negative.
1320
13212007-07-08  Thomas Koenig  <tkoenig@gcc.gnu.org>
1322
1323	PR libfortran/32217
1324	* intrinsics/unpack_generic.c:  If the destination array is
1325	empty, return early.
1326
13272007-07-05  H.J. Lu  <hongjiu.lu@intel.com>
1328
1329	* aclocal.m4: Regenerated.
1330
13312007-07-04  David Edelsohn  <edelsohn@gnu.org>
1332
1333	* configure.ac: SUBST CFLAGS.
1334	* configure: Regenerate.
1335
13362007-07-03  Janne Blomqvist  <jb@gcc.gnu.org>
1337
1338	* libgfortran.h: Mark internal_malloc_size as a malloc function.
1339	* runtime/memory.c (internal_realloc_size): Remove.
1340	(internal_realloc): Call realloc directly instead of
1341	internal_realloc_size.
1342	(allocate_size): Remove.
1343	(allocate): Call malloc directly instead of allocate_size, mark as
1344	malloc function.
1345
13462007-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>
1347
1348	Restore collateral damage from ISO C Binding merge.
1349
13502007-06-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1351
1352	PR libgfortran/32456
1353	* io/unit.c (filename_from_unit): Don't use find_unit, instead search
1354	for unit directly.
1355
13562007-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>
1357
1358	* Makefile.in:  Regenerated with automake 1.9.6.
1359
13602007-07-02  Steven G. Kargl  <kargl@gcc.gnu.org>
1361
1362	* Makefile.in:  Remove extraneous kill.lo rule.
1363
13642007-07-02  Janne Blomqvist  <jb@gcc.gnu.org>
1365
1366	PR fortran/32239
1367	* generated/pow_r*_i4.c: Removed.
1368
13692007-07-01  Christopher D. Rickett  <crickett@lanl.gov>
1370
1371	* Makefile.in: Add support for iso_c_generated_procs.c and
1372	iso_c_binding.c.
1373	* Makefile.am: Ditto.
1374	* intrinsics/iso_c_generated_procs.c: New file containing helper
1375	functions.
1376	* intrinsics/iso_c_binding.c: Ditto.
1377	* intrinsics/iso_c_binding.h: New file
1378	* gfortran.map: Include the __iso_c_binding_c_* functions.
1379	* libgfortran.h: define GFC_NUM_RANK_BITS.
1380
13812007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
1382
1383	PR fortran/32239
1384	* Makefile.am: Don't generate real**int4 pow functions.
1385	* gfortran.map: Remove real**int4 pow symbols.
1386	* Makefile.in: Regenerated.
1387
13882007-07-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1389
1390	PR libgfortran/32554
1391	* io/write.c (output_float): Set edigits to a fixed size, avoiding
1392	variation in field width calculation and eliminate buffer overrun.
1393
13942007-07-01  Janne Blomqvist  <jb@gcc.gnu.org>
1395
1396	* runtime/memory.c (internal_realloc): Use index_type for size
1397	argument instead of GFC_INTEGER_4.
1398	(allocate_array): Likewise.
1399	(allocate): Likewise, add ifdef around unnecessary check.
1400	(internal_reallo64): Remove.
1401	(allocate_array64): Remove.
1402	(allocate64): Remove.
1403	* gfortran.map: Remove symbols for 64-bit allocation functions.
1404
14052007-06-29  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1406
1407	PR libgfortran/32456
1408	* io/unit.c (filename_from_unit): Don't use find_unit, instead search
1409	for unit directly.
1410
14112007-06-24  Adam Nemet  <anemet@caviumnetworks.com>
1412
1413	PR libfortran/32495
1414	* runtime/backtrace.c (local_strcasestr): Rename from strcasestr.
1415	(show_backtrace): Rename strcasestr to local_strcasestr.
1416
14172007-06-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1418
1419	PR libgfortran/32456
1420	* runtime/error.c (show_locus): Update to emit the unit number
1421	and file name involved with the error.  Use new function
1422	filename_from_unit.
1423	* libgfortran.h (filename_from_unit): Declare new function.
1424	* io/unit.c (init_units): Set the unit file name for stdin, stdout,
1425	and stderr for use later in error reporting.
1426	(filename_from_unit): Add this new function.
1427
14282007-06-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1429
1430	PR libgfortran/32446
1431	* io/write.c (output_float): Calculate ndigits correctly for large
1432	numbered formats that must pad zeros before the decimal point.
1433
14342007-06-15  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
1435
1436	PR libfortran/32345
1437	* runtime/backtrace.c (show_backtrace): Only use snprintf if
1438	available.
1439
14402007-06-10  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1441
1442	PR libgfortran/32235
1443	* io/transfer.c (st_read): Remove test for end of file condition.
1444	(next_record_r): Add test for end of file condition.
1445
14462007-06-02  Paolo Bonzini  <bonzini@gnu.org>
1447
1448	* configure: Regenerate.
1449
14502007-05-28  Tobias Burnus  <burnus@net-b.de>
1451
1452	PR fortran/32124
1453	* runtime/memory.c (allocate_size): Use ERROR_ALLOCATION.
1454	(allocate,allocate64): Use stat variable if present.
1455
14562007-05-27  Janne Blomqvist  <jb@gcc.gnu.org>
1457
1458	* runtime/string.c (compare0): Use gfc_charlen_type instead of
1459	int.
1460	(fstrlen): Likewise.
1461	(find_option): Likewise.
1462	(fstrcpy): Use gfc_charlen_type instead of int, return length.
1463	(cf_strcpy): Likewise.
1464	* libgfortran.h: Change string prototypes to use gfc_charlen_type.
1465	* io/open.c (new_unit): Use snprintf if available.
1466	* io/list_read.c (nml_touch_nodes): Use memcpy instead of
1467	strcpy/strcat.
1468	(nml_read_obj): Likewise.
1469	* io/transfer.c (st_set_nml_var): Likewise.
1470	* io/write.c (output_float): Use snprintf if available.
1471	(nml_write_obj) Use memcpy instead of strcpy/strcat.
1472
14732007-05-26  Janne Blomqvist  <jb@gcc.gnu.org>
1474
1475	* io/unix.c (unix_stream): Rearrange struct members, remove
1476	small_buffer.
1477	(int_stream): New struct.
1478	(fd_alloc): Always use existing buffer, never reallocate.
1479	(fd_sfree): Remove check for buffer != small_buffer.
1480	(fd_close): Likewise.
1481	(mem_alloc_r_at): Change to use int_stream.
1482	(mem_alloc_w_at): Likewise.
1483	(mem_read): Likewise.
1484	(mem_write): Likewise.
1485	(mem_set): Likewise.
1486	(mem_truncate): Likewise.
1487	(mem_close): Likewise.
1488	(mem_sfree): Likewise.
1489	(empty_internal_buffer): Likewise.
1490	(open_internal): Likewise.
1491
14922007-05-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1493
1494	* io/transfer.c (unformatted_read): Use size from front end
1495	eliminating use of size_from_real_kind.
1496	(unformatted_write): Ditto.
1497
14982007-05-23  Steve Ellcey  <sje@cup.hp.com>
1499
1500	* Makefile.in: Regenerate.
1501	* configure: Regenerate.
1502	* aclocal.m4: Regenerate.
1503
15042007-05-22  Tobias Burnus  <burnus@net-b.de>
1505
1506	* libgfortran.h: Mark stop_numeric as noreturn.
1507
15082007-05-22  Tobias Burnus  <burnus@net-b.de>
1509
1510	PR libgfortran/31295
1511	* intrinsics/eoshift0.c (eoshift0): Silence uninitialized warning.
1512	* intrinsics/eoshift2.c (eoshift2): Ditto.
1513
15142007-05-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1515
1516	PR libfortran/31964
1517	* intrinsics/ishftc.c (ishftc4, ishftc8, ishftc16): Fix mask to handle
1518	shift of bit-size number of bits.
1519
15202007-05-17  Tobias Burnus <burnus@net-b.de>
1521
1522	PR fortran/31917
1523	* runtime/environ.c (mark_range): Fix setting default convert unit.
1524
15252007-05-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1526
1527	PR libfortran/31922
1528	* intrinsics/string_intrinsics.c (string_trim): Set result to null if
1529	string length is zero.
1530
15312007-05-15  Tobias Burnus  <burnus@net-b.de>
1532
1533	PR libfortran/31915
1534	* io/transfer.c (unformatted_read): Use proper size for real(10).
1535	  (unformatted_write): Ditto.
1536
15372007-05-14  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1538
1539	PR fortran/30723
1540	* runtime/memory.c (internal_malloc, internal_malloc64,
1541	internal_free): Remove.
1542	* runtime/error.c (os_error): Export function.
1543	* intrinsics/move_alloc.c: Include stdlib.h.
1544	(move_alloc): Call free instead of internal_free.
1545	(move_alloc_c): Wrap long lines.
1546	* libgfortran.h (os_error): Export prototype.
1547	(internal_free): Remove prototype.
1548	* gfortran.map (GFORTRAN_1.0): Remove _gfortran_internal_free,
1549	_gfortran_internal_malloc and _gfortran_internal_malloc64.
1550	Add _gfortran_os_error.
1551
15522007-05-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1553
1554	PR libfortran/31880
1555	* io/unix.c (fd_alloc_r_at): Fix calculation of physical offset.
1556
15572007-05-07  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1558
1559	PR libfortran/31607
1560	* intrinsics/system.c (system_sub): Call flush_all_units.
1561	* io/io.h (flush_all_units): Move prototype to libgfortran.h.
1562	* libgfortran.h (flush_all_units): Add prototype.
1563
15642007-05-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1565
1566	PR libfortran/31201
1567	* runtime/error.c (runtime_error_at): New function.
1568	(generate_error): Export this function.
1569	* gfortran.map: Add _gfortran_generate_error and
1570	_gfortran_runtime_error_at.
1571	* libgfortran.h: Add comment to reference error codes in front end.
1572	(library_start): Locate prototype with library_end macro and add
1573	a new comment.  Add prototype for runtime_error_at. Export prototype
1574	for generate_error.
1575	* io/lock.c (library_start): Fix check for error condition.
1576	* io/transfer.c (data_transfer_init): Add library check.
1577
15782007-05-04  Daniel Franke  <franke.daniel@gmail.com>
1579
1580	PR fortran/22359
1581	* io/intrinsics.c (fseek_sub): New.
1582	* io/unix.c (fd_fseek): Change logical and physical offsets only
1583	if seek succeeds.
1584	* gfortran.map (fseek_sub): New.
1585
15862007-05-04  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1587
1588	PR libfortran/31210
1589	* io/transfer.c (transfer_character): Avoid passing a NULL
1590	pointer as source to the transfer routines, if the string length
1591	is zero.
1592
15932007-04-28  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1594
1595	PR libfortran/31501
1596	* io/list_read.c (next_char): Fix whitespace.
1597	* io/io.h: Remove prototypes and define macros for is_array_io,
1598	is_stream_io, and is_internal_unit.
1599	* io/unit.c (is_array_io), (is_internal_unit), (is_stream_io): Delete
1600	these functions.
1601	* io/transfer.c (read_sf): Change handling of internal_unit to make a
1602	single call to salloc_r and use memcpy to transfer the data.
1603
16042007-04-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1605
1606	PR libfortran/31532
1607	* io/file_pos.c (st_backspace): Set flags.position for end of file
1608	condition and use new function update_position.
1609	(st_endfile): Use new function update_position.
1610	* io/io.h: Add prototype for new function.
1611	* io/inquire.c (inquire_via_unit): If not direct access, set NEXTREC
1612	to zero.
1613	* io/unit.c (update_position): New function to update position info
1614	used by inquire.
1615	* io/transfer.c (next_record): Fix typo and use new function.
1616
16172007-04-25  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1618
1619	PR libfortran/31299
1620	* intrinsics/getlog.c: Use getpwuid and geteuid instead of
1621	getlogin if they are available.
1622	* configure.ac: Add checks for getpwuid and geteuid.
1623	* configure: Regenerate.
1624	* config.h.in: Regenerate.
1625
16262007-04-25  Janne Blomqvist  <jb@gcc.gnu.org>
1627
1628	* configure: Regenerate using autoconf 2.59.
1629	* Makefile.in: Likewise.
1630	* config.h.in: Likewise.
1631
16322007-04-24  Janne Blomqvist  <jb@gcc.gnu.org>
1633
1634	PR libfortran/27740
1635	* configure.ac: New test to determine if symbol versioning is
1636	supported.
1637	* Makefile.am: Use result of above test to add appropriate linker
1638	flags.
1639	* gfortran.map: New file.
1640	* configure: Regenerated.
1641	* Makefile.in: Regenerated.
1642	* config.h.in: Regenerated.
1643
16442007-04-23  Thomas Koenig  <tkoenig@gcc.gnu.org>
1645
1646	PR fortran/31618
1647	* io/transfer.c (read_block_direct):  Instead of calling us_read,
1648	set dtp->u.p.current_unit->current_record = 0 so that pre_position
1649	will read the record marker.
1650	(data_transfer_init):  For different error conditions, call
1651	generate_error, then return.
1652
16532007-04-19  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1654
1655	* runtime/main.c (please_free_exe_path_when_done): New variable.
1656	(store_exe_path): Initialize character buffer, and mark whether
1657	exe_path should be free'd by the library destructor function.
1658	(cleanup): Only free exe_path if needed.
1659
16602007-04-18  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1661	    Tobias Burnus  <burnus@net-b.de>
1662
1663	PR libfortran/31286
1664	PR libfortran/31296
1665	* intrinsics/cshift0.c (cshift0): Initialize sstride[0] and rstride[0].
1666	* intrinsics/unpack_generic.c (unpack0, unpack0_char): Zero the
1667	array structures we pass to unpack_internal.
1668
16692007-04-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1670
1671	* io/open.c (test_endfile): Revert changes for 31052, restoring this
1672	function.
1673
16742007-04-14  Steve Ellcey  <sje@cup.hp.com>
1675
1676	* Makefile.am: Add -I .. to ACLOCAL_AMFLAGS.  Add libgfortran_la_LINK.
1677	* Makefile.in: Regenerate.
1678
16792007-04-11  Kai Tietz  <kai.tietz@onevision.com>
1680
1681	* configure: Regenerate.
1682
16832007-04-06  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1684
1685	* intrinsics/cpu_time.c: Don't include headers already included
1686	by libgfortran.h. Protect inclusion of sys/times.h.
1687	* configure.ac: Remove unneeded checks for finit, stdio.h,
1688	stddef.h, math.h and sys/params.h.
1689	* config/fpu-aix.h: Don't include headers already included by
1690	libgfortran.h.
1691	* config/fpu-sysv.h: Likewise.
1692	* io/write.c: Likewise.
1693	* m4/minloc1.m4: Likewise.
1694	* m4/maxloc1.m4: Likewise.
1695	* m4/fraction.m4: Likewise.
1696	* m4/set_exponent.m4: Likewise.
1697	* m4/spacing.m4: Likewise.
1698	* m4/minval.m4: Likewise.
1699	* m4/maxval.m4: Likewise.
1700	* m4/exponent.m4: Likewise.
1701	* m4/nearest.m4: Likewise.
1702	* m4/minloc0.m4: Likewise.
1703	* m4/maxloc0.m4: Likewise.
1704	* m4/rrspacing.m4: Likewise.
1705	* runtime/main.c: Likewise.
1706	* runtime/error.c: Likewise.
1707	* intrinsics/system_clock.c: Likewise.
1708	* intrinsics/etime.c: Likewise.
1709	* intrinsics/stat.c: Likewise.
1710	* intrinsics/date_and_time.c: Likewise.
1711	* intrinsics/env.c: Likewise.
1712	* intrinsics/kill.c: Likewise.
1713	* intrinsics/getXid.c: Likewise.
1714	* intrinsics/chmod.c: Likewise.
1715	* intrinsics/args.c: Likewise.
1716	* intrinsics/c99_functions.c: Likewise.
1717	* generated/minval_r8.c: Regenerate.
1718	* generated/maxloc1_4_r8.c: Regenerate.
1719	* generated/minloc1_16_r16.c: Regenerate.
1720	* generated/maxval_i2.c: Regenerate.
1721	* generated/maxloc1_8_i4.c: Regenerate.
1722	* generated/exponent_r16.c: Regenerate.
1723	* generated/maxloc0_4_r4.c: Regenerate.
1724	* generated/fraction_r16.c: Regenerate.
1725	* generated/fraction_r4.c: Regenerate.
1726	* generated/minloc0_4_r16.c: Regenerate.
1727	* generated/minloc0_4_i1.c: Regenerate.
1728	* generated/maxloc0_4_r16.c: Regenerate.
1729	* generated/maxloc0_4_i2.c: Regenerate.
1730	* generated/minloc1_8_r16.c: Regenerate.
1731	* generated/maxloc1_8_r16.c: Regenerate.
1732	* generated/set_exponent_r8.c: Regenerate.
1733	* generated/maxloc0_8_i8.c: Regenerate.
1734	* generated/minloc1_4_r8.c: Regenerate.
1735	* generated/maxloc1_16_r16.c: Regenerate.
1736	* generated/minloc1_16_i4.c: Regenerate.
1737	* generated/maxloc1_16_i4.c: Regenerate.
1738	* generated/minloc0_16_i8.c: Regenerate.
1739	* generated/maxloc0_16_i8.c: Regenerate.
1740	* generated/nearest_r8.c: Regenerate.
1741	* generated/spacing_r16.c: Regenerate.
1742	* generated/maxval_r16.c: Regenerate.
1743	* generated/minloc1_8_i4.c: Regenerate.
1744	* generated/minloc0_16_i16.c: Regenerate.
1745	* generated/minloc0_4_r4.c: Regenerate.
1746	* generated/set_exponent_r10.c: Regenerate.
1747	* generated/rrspacing_r10.c: Regenerate.
1748	* generated/minloc0_4_i2.c: Regenerate.
1749	* generated/maxloc0_8_i1.c: Regenerate.
1750	* generated/minloc0_8_i8.c: Regenerate.
1751	* generated/spacing_r4.c: Regenerate.
1752	* generated/minloc1_16_r10.c: Regenerate.
1753	* generated/minloc0_16_i1.c: Regenerate.
1754	* generated/maxloc0_16_i1.c: Regenerate.
1755	* generated/maxloc1_8_r8.c: Regenerate.
1756	* generated/minval_i16.c: Regenerate.
1757	* generated/exponent_r10.c: Regenerate.
1758	* generated/maxval_i4.c: Regenerate.
1759	* generated/minval_i8.c: Regenerate.
1760	* generated/maxloc1_4_i8.c: Regenerate.
1761	* generated/fraction_r10.c: Regenerate.
1762	* generated/maxloc0_16_i16.c: Regenerate.
1763	* generated/maxloc0_8_r4.c: Regenerate.
1764	* generated/rrspacing_r8.c: Regenerate.
1765	* generated/minloc1_4_i16.c: Regenerate.
1766	* generated/minloc0_4_r10.c: Regenerate.
1767	* generated/maxloc1_4_i16.c: Regenerate.
1768	* generated/minloc0_8_i16.c: Regenerate.
1769	* generated/maxloc0_4_r10.c: Regenerate.
1770	* generated/maxloc0_8_i16.c: Regenerate.
1771	* generated/minloc1_8_r10.c: Regenerate.
1772	* generated/minloc0_16_r4.c: Regenerate.
1773	* generated/maxloc1_8_r10.c: Regenerate.
1774	* generated/maxloc0_16_r4.c: Regenerate.
1775	* generated/minloc1_16_r8.c: Regenerate.
1776	* generated/minloc0_8_i1.c: Regenerate.
1777	* generated/maxloc0_4_i4.c: Regenerate.
1778	* generated/maxloc1_16_r8.c: Regenerate.
1779	* generated/maxloc0_8_i2.c: Regenerate.
1780	* generated/nearest_r16.c: Regenerate.
1781	* generated/maxloc1_16_r10.c: Regenerate.
1782	* generated/minloc0_16_i2.c: Regenerate.
1783	* generated/minloc1_8_r8.c: Regenerate.
1784	* generated/maxloc0_16_i2.c: Regenerate.
1785	* generated/exponent_r4.c: Regenerate.
1786	* generated/spacing_r10.c: Regenerate.
1787	* generated/maxval_r10.c: Regenerate.
1788	* generated/minval_i1.c: Regenerate.
1789	* generated/maxloc1_4_i1.c: Regenerate.
1790	* generated/minloc1_4_i8.c: Regenerate.
1791	* generated/minloc0_8_r4.c: Regenerate.
1792	* generated/minloc0_16_r16.c: Regenerate.
1793	* generated/minloc0_4_i4.c: Regenerate.
1794	* generated/minloc0_8_i2.c: Regenerate.
1795	* generated/minval_r4.c: Regenerate.
1796	* generated/maxloc1_4_r4.c: Regenerate.
1797	* generated/maxval_r8.c: Regenerate.
1798	* generated/minval_r16.c: Regenerate.
1799	* generated/minloc1_4_i1.c: Regenerate.
1800	* generated/minval_i2.c: Regenerate.
1801	* generated/maxloc1_4_i2.c: Regenerate.
1802	* generated/maxloc1_8_i8.c: Regenerate.
1803	* generated/maxloc0_4_r8.c: Regenerate.
1804	* generated/maxloc0_16_r16.c: Regenerate.
1805	* generated/minloc1_4_r16.c: Regenerate.
1806	* generated/fraction_r8.c: Regenerate.
1807	* generated/maxloc1_4_r16.c: Regenerate.
1808	* generated/set_exponent_r4.c: Regenerate.
1809	* generated/minloc0_8_r16.c: Regenerate.
1810	* generated/maxloc0_8_r16.c: Regenerate.
1811	* generated/nearest_r10.c: Regenerate.
1812	* generated/maxloc0_8_i4.c: Regenerate.
1813	* generated/minloc1_4_r4.c: Regenerate.
1814	* generated/minloc0_16_i4.c: Regenerate.
1815	* generated/maxloc0_16_i4.c: Regenerate.
1816	* generated/nearest_r4.c: Regenerate.
1817	* generated/minloc1_16_i8.c: Regenerate.
1818	* generated/maxloc1_16_i8.c: Regenerate.
1819	* generated/minloc1_4_i2.c: Regenerate.
1820	* generated/maxloc1_8_i1.c: Regenerate.
1821	* generated/minloc0_16_r10.c: Regenerate.
1822	* generated/minloc1_8_i8.c: Regenerate.
1823	* generated/minloc0_4_r8.c: Regenerate.
1824	* generated/minloc0_8_i4.c: Regenerate.
1825	* generated/minloc1_16_i16.c: Regenerate.
1826	* generated/spacing_r8.c: Regenerate.
1827	* generated/maxloc1_8_r4.c: Regenerate.
1828	* generated/minloc1_16_i1.c: Regenerate.
1829	* generated/maxloc1_16_i1.c: Regenerate.
1830	* generated/minval_r10.c: Regenerate.
1831	* generated/minval_i4.c: Regenerate.
1832	* generated/minloc1_8_i1.c: Regenerate.
1833	* generated/maxloc1_4_i4.c: Regenerate.
1834	* generated/maxloc1_8_i2.c: Regenerate.
1835	* generated/maxval_i8.c: Regenerate.
1836	* generated/maxloc0_16_r10.c: Regenerate.
1837	* generated/rrspacing_r4.c: Regenerate.
1838	* generated/minloc0_4_i16.c: Regenerate.
1839	* generated/maxloc0_8_r8.c: Regenerate.
1840	* generated/maxloc0_4_i16.c: Regenerate.
1841	* generated/minloc1_4_r10.c: Regenerate.
1842	* generated/minloc1_8_i16.c: Regenerate.
1843	* generated/maxloc1_4_r10.c: Regenerate.
1844	* generated/minloc0_8_r10.c: Regenerate.
1845	* generated/maxloc1_8_i16.c: Regenerate.
1846	* generated/maxloc0_8_r10.c: Regenerate.
1847	* generated/minloc1_16_r4.c: Regenerate.
1848	* generated/maxloc1_16_r4.c: Regenerate.
1849	* generated/minloc0_16_r8.c: Regenerate.
1850	* generated/maxloc0_16_r8.c: Regenerate.
1851	* generated/maxloc0_4_i8.c: Regenerate.
1852	* generated/maxloc1_16_i16.c: Regenerate.
1853	* generated/minloc1_8_r4.c: Regenerate.
1854	* generated/minloc1_16_i2.c: Regenerate.
1855	* generated/maxloc1_16_i2.c: Regenerate.
1856	* generated/maxval_i16.c: Regenerate.
1857	* generated/exponent_r8.c: Regenerate.
1858	* generated/minloc1_4_i4.c: Regenerate.
1859	* generated/maxval_i1.c: Regenerate.
1860	* generated/minloc1_8_i2.c: Regenerate.
1861	* generated/minloc0_8_r8.c: Regenerate.
1862	* generated/set_exponent_r16.c: Regenerate.
1863	* generated/maxloc0_4_i1.c: Regenerate.
1864	* generated/rrspacing_r16.c: Regenerate.
1865	* generated/minloc0_4_i8.c: Regenerate.
1866	* generated/maxval_r4.c: Regenerate.
1867	* configure: Regenerate.
1868	* config.h.in: Regenerate.
1869
18702007-04-06  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1871
1872	PR libfortran/31395
1873	* io/format.c (parse_format_list): Fix parsing.
1874
18752007-04-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1876
1877	PR fortran/31304
1878	intrinsics/string_intrinsics.c (string_repeat): Remove.
1879
18802007-04-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1881
1882	PR libfortran/31052
1883	* io/open.c (test_endfile): Delete this function.
1884	(edit_modes): Delete call to test_endfile.
1885	(new_unit): Likewise.
1886	* io/io.h: Delete prototype for test_endfile.
1887	* io/transfer.c (next_record_r): Remove use of test_endfile.
1888	(st_read):  Add test for end file condition and adjust status.
1889
18902007-04-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1891
1892	PR libfortran/31366
1893	* io/transfer.c (read_block_direct): Do not generate error when reading
1894	past EOF on a short record that is less than the RECL= specified.
1895
18962007-04-01  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1897
1898	PR libfortran/31207
1899	* io/unit.c (close_unit_1): If there are bytes previously written from
1900	ADVANCE="no", move to the end before closing.
1901
19022007-03-31  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
1903
1904	PR libfortran/31335
1905	* intrinsics/stat.c: Only provide STAT and FSTAT library routines
1906	if stat() and fstat() library functions are available. When lstat()
1907	is not available, use stat() instead.
1908	* configure.ac: Add checks for stat, fstat and lstat.
1909	* configure: Regenerate.
1910	* config.h.in: Regenerate.
1911
19122007-03-27  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1913
1914	PR libfortran/31052
1915	* io/transfer.c (next_record_r): Do not call test_endfile if in
1916	namelist mode.
1917
19182007-03-25  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1919
1920	PR libfortran/31199
1921	* io/io.h: Add saved_pos to gfc_unit structure.
1922	* io/open.c (new_unit): Initialize saved_pos.
1923	* io/transfer.c (data_transfer_init): Set max_pos to value in
1924	saved_pos.
1925	(next_record_w): Fix whitespace.
1926	(finalze_transfer): Calculate max_pos for ADVANCE="no" and save it for
1927	later use.  If not ADVANCE="no" set saved_pos to zero.
1928
19292007-03-25  Thomas Koenig  <tkoenig@gcc.gnu.org>
1930
1931	PR libfortran/31196
1932	* intrinsics/reshape_generic.c (reshape_internal):  Increment
1933	correct variable.
1934
19352007-03-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1936
1937	PR libfortran/31052
1938	* file_pos.c: Update Copyright year.
1939	* io/open.c (test_endfile): Restore test_endfile to fix SPEC
1940	regression.  Update Copyright year.
1941	* io/io.h: Same.
1942	* io/unix.c (is_special): Add missing type for this function.
1943	Update Copyright year.
1944	* io/transfer.c (next_record_r): Restore test_endfile.
1945	(st_read): Fix whitespace.  Update Copyright year
1946
19472007-03-20  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1948
1949	* configure.ac: Add missing check for gettimeofday.
1950	* config.h.in: Renegerate.
1951	* configure: Regenerate.
1952
19532007-03-18  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1954
1955	PR libfortran/31052
1956	* io/file_position (st_rewind): Fix comments. Remove use of
1957	test_endfile. Don't seek if already at 0 position.  Use new is_special
1958	function to set endfile state.
1959	* io/open.c (test_endfile): Delete this function.
1960	* io/io.h: Delete prototype for test_endfile.  Add prototype
1961	for is_special.
1962	* io/unix.c (is_special): New function. Fix whitespace.
1963	* io/transfer.c (next_record_r): Remove use of test_endfile.
1964
19652007-03-16  David Edelsohn  <edelsohn@gnu.org>
1966
1967	* runtime/main.c: Include "config.h" first.
1968
19692007-03-15  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1970
1971	PR libfortran/31099
1972	* io/file_pos.c (st_rewind): Don't set bytes_left to zero.
1973
19742007-03-15  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
1975
1976	* runtime/backtrace.c: New file.
1977	* runtime/environ.c (variable_table): New GFORTRAN_ERROR_BACKTRACE
1978	environment variable.
1979	* runtime/compile_options.c (set_std): Add new argument.
1980	* runtime/main.c (store_exe_path, full_exe_path): New functions.
1981	* runtime/error.c (sys_exit): Add call to show_backtrace.
1982	* libgfortran.h (options_t): New backtrace field.
1983	(store_exe_path, full_exe_path, show_backtrace): New prototypes.
1984	* configure.ac: Add checks for execinfo.h, execvp, pipe, dup2,
1985	close, fdopen, strcasestr, getrlimit, backtrace, backtrace_symbols
1986	and getppid.
1987	* Makefile.am: Add runtime/backtrace.c.
1988	* fmain.c (main): Add call to store_exe_path.
1989	* Makefile.in: Renegerate.
1990	* config.h.in: Renegerate.
1991	* configure: Regenerate.
1992
19932007-03-14  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
1994
1995	PR libfortran/31051
1996	* io/transfer.c (formatted_transfer_scalar): Adjust position for
1997	pending spaces when in writing mode.  Clean up some formatting.
1998
19992007-03-14  Thomas Koenig  <Thomas.Koenig@online.de>
2000
2001	PR libfortran/30690
2002	* all.m4: Quote everything, except for m4 macros.
2003	* any.m4: Likewise.
2004	* count.m4: Likewise.
2005	* cshift1.m4: Likewise.
2006	* eoshift1.m4: Likewise.
2007	* eoshift3.m4: Likewise.
2008	* exponent.m4: Likewise.
2009	* fraction.m4: Likewise.
2010	* in_pack.m4: Likewise.
2011	* in_unpack.m4: Likewise.
2012	* matmul.m4: Likewise.
2013	* matmull.m4: Likewise.
2014	* nearest.m4: Likewise.
2015	* pow.m4: Likewise.
2016	* product.m4: Likewise.
2017	* reshape.m4: Likewise.
2018	* rrspacing.m4: Likewise.
2019	* set_exponent.m4: Likewise.
2020	* shape.m4: Likewise.
2021	* spacing.m4: Likewise.
2022	* transpose.m4: Likewise.
2023
20242007-03-14  Jakub Jelinek  <jakub@redhat.com>
2025
2026	* io/unix.c (regular_file): For ACTION_UNSPECIFIED retry with
2027	O_RDONLY even if errno is EROFS.
2028
20292007-03-09  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
2030
2031	PR libfortran/31099
2032	* io/open.c (new_unit): Initialize bytes_left and recl_subrecord.
2033	* io/transfer.c (next_record_w): Set bytes left to record length for
2034	sequential unformatted I/O.
2035	(next_record_r): Ditto.
2036	(read_block_direct): Fix test for exceeding bytes_left.
2037
20382007-03-08  Daniel Franke  <franke.daniel@gmail.com>
2039
2040	PR fortran/30947
2041	* intrinsics/signal.c (alarm_sub_int): Avoid SEGFAULT with
2042	integer arguments.
2043
20442007-03-04  Thomas Koenig  <Thomas.Koenig@online.de>
2045
2046	PR libfortran/30981
2047	* m4/pow_m4: Use appropriate unsigned int type for u.
2048	* generated/pow_c10_i16.c: Regenerated.
2049	* generated/pow_c10_i4.c: Regenerated.
2050	* generated/pow_c10_i8.c: Regenerated.
2051	* generated/pow_c16_i16.c: Regenerated.
2052	* generated/pow_c16_i4.c: Regenerated.
2053	* generated/pow_c16_i8.c: Regenerated.
2054	* generated/pow_c4_i16.c: Regenerated.
2055	* generated/pow_c4_i4.c: Regenerated.
2056	* generated/pow_c4_i8.c: Regenerated.
2057	* generated/pow_c8_i16.c: Regenerated.
2058	* generated/pow_c8_i4.c: Regenerated.
2059	* generated/pow_c8_i8.c: Regenerated.
2060	* generated/pow_i16_i16.c: Regenerated.
2061	* generated/pow_i16_i4.c: Regenerated.
2062	* generated/pow_i16_i8.c: Regenerated.
2063	* generated/pow_i4_i16.c: Regenerated.
2064	* generated/pow_i4_i4.c: Regenerated.
2065	* generated/pow_i4_i8.c: Regenerated.
2066	* generated/pow_i8_i16.c: Regenerated.
2067	* generated/pow_i8_i4.c: Regenerated.
2068	* generated/pow_i8_i8.c: Regenerated.
2069	* generated/pow_r10_i16.c: Regenerated.
2070	* generated/pow_r10_i4.c: Regenerated.
2071	* generated/pow_r10_i8.c: Regenerated.
2072	* generated/pow_r16_i16.c: Regenerated.
2073	* generated/pow_r16_i4.c: Regenerated.
2074	* generated/pow_r16_i8.c: Regenerated.
2075	* generated/pow_r4_i16.c: Regenerated.
2076	* generated/pow_r4_i4.c: Regenerated.
2077	* generated/pow_r4_i8.c: Regenerated.
2078	* generated/pow_r8_i16.c: Regenerated.
2079	* generated/pow_r8_i4.c: Regenerated.
2080	* generated/pow_r8_i8.c: Regenerated.
2081
20822007-03-03  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2083
2084	PR libfortran/31001
2085	* intrinsics/pack_generic.c (pack_internal): Add special checks
2086	for zero-sized arrays.
2087
20882007-03-01  Brooks Moses  <brooks.moses@codesourcery.com>
2089
2090	* Makefile.am: Add dummy install-pdf target.
2091	* Makefile.in: Regenerate
2092
20932007-02-24  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
2094
2095	PR libfortran/30918
2096	* io/listread.c (namelist_read): Eat comment line.
2097
20982007-02-22  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
2099
2100	PR libfortran/30910
2101	* io/write.c (output_float): Add condition of format F only for
2102	special case rounding with zero precision.
2103
21042007-02-19  Thomas Koenig  <Thomas.Koenig@online.de>
2105
2106	PR libfortran/30533
2107	PR libfortran/30765
2108	* Makefile.am: Add $(srcdir) too all files in generated/.
2109	(i_maxloc0_c): Add maxloc0_4_i1.c, maxloc0_8_i1.c,
2110	maxloc0_16_i1.c, maxloc0_4_i2.c, maxloc0_8_i2.c and
2111	maxloc0_16_i2.c.
2112	(i_maxloc1_c): Add maxloc1_4_i1.c, maxloc1_8_i1.c,
2113	maxloc1_16_i1.c, maxloc1_4_i2.c, maxloc1_8_i2.c and
2114	maxloc1_16_i2.c.
2115	(i_maxval_c): Add maxval_i1.c and maxval_i2.c.
2116	(i_minloc0_c):  Add minloc0_4_i1.c, minloc0_8_i1.c,
2117	minloc0_16_i1.c, minloc0_4_i2.c, minloc0_8_i2.c and
2118	minloc0_16_i2.c.
2119	(i_minloc_1.c): Add minloc1_4_i1.c, minloc1_8_i1.c,
2120	minloc1_16_i1.c, minloc1_4_i2.c, minloc1_8_i2.c and
2121	minloc1_16_i2.c.
2122	(i_minval_c):  Add minval_i1.c and minval_i2.c.
2123	(i_sum_c):  Add sum_i1.c and sum_i2.c.
2124	(i_product_c):  Add product_i1.c and product_i2.c.
2125	(i_matmul_c):  Add matmul_i1.c and matmul_i2.c.
2126	(gfor_built_specific_src):  Remove $(srcdir) from target.
2127	(gfor_bulit_specific2_src):  Likewise.
2128	Makefile.in:  Regenerated.
2129	libgfortran.h:  Add GFC_INTEGER_1_HUGE and GFC_INTEGER_2_HUGE.
2130	Add gfc_array_i1 and gfc_array_i2.
2131	* generated/matmul_i1.c: New file.
2132	* generated/matmul_i2.c: New file.
2133	* generated/maxloc0_16_i1.c: New file.
2134	* generated/maxloc0_16_i2.c: New file.
2135	* generated/maxloc0_4_i1.c: New file.
2136	* generated/maxloc0_4_i2.c: New file.
2137	* generated/maxloc0_8_i1.c: New file.
2138	* generated/maxloc0_8_i2.c: New file.
2139	* generated/maxloc1_16_i1.c: New file.
2140	* generated/maxloc1_16_i2.c: New file.
2141	* generated/maxloc1_4_i1.c: New file.
2142	* generated/maxloc1_4_i2.c: New file.
2143	* generated/maxloc1_8_i1.c: New file.
2144	* generated/maxloc1_8_i2.c: New file.
2145	* generated/maxval_i1.c: New file.
2146	* generated/maxval_i2.c: New file.
2147	* generated/minloc0_16_i1.c: New file.
2148	* generated/minloc0_16_i2.c: New file.
2149	* generated/minloc0_4_i1.c: New file.
2150	* generated/minloc0_4_i2.c: New file.
2151	* generated/minloc0_8_i1.c: New file.
2152	* generated/minloc0_8_i2.c: New file.
2153	* generated/minloc1_16_i1.c: New file.
2154	* generated/minloc1_16_i2.c: New file.
2155	* generated/minloc1_4_i1.c: New file.
2156	* generated/minloc1_4_i2.c: New file.
2157	* generated/minloc1_8_i1.c: New file.
2158	* generated/minloc1_8_i2.c: New file.
2159	* generated/minval_i1.c: New file.
2160	* generated/minval_i2.c: New file.
2161	* generated/product_i1.c: New file.
2162	* generated/product_i2.c: New file.
2163	* generated/sum_i1.c: New file.
2164	* generated/sum_i2.c: New file.
2165
21662007-02-16  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2167
2168	* runtime/memory.c (deallocate): Correct comment.
2169
21702007-02-10  Thomas Koenig  <Thomas.Koenig@online.de>
2171
2172	* Makefile.am:  Use $(M4) instead of m4.
2173	* Makefile.in:  Regenerate.
2174
21752007-02-10  Thomas Koenig  <Thomas.Koenig@online.de>
2176
2177	* Makefile.am: Remove $(srcdir) from assorted targets
2178	in maintainer mode.
2179	* Makefile.in: Regenerate.
2180
21812007-02-09  Thomas Koenig  <Thomas.Koenig@online.de>
2182	    Tobias Burnus  <burnus@net-b.de>
2183
2184	PR fortran/30512
2185	* m4/iparm.m4: Use HUGE-1 for most negative integer.
2186	* generated/maxloc1_8_i4.c: Regenerate.
2187	* generated/maxloc0_8_i8.c: Regenerate.
2188	* generated/maxloc1_16_i4.c: Regenerate.
2189	* generated/maxloc0_16_i8.c: Regenerate.
2190	* generated/maxval_i4.c: Regenerate.
2191	* generated/maxloc1_4_i8.c: Regenerate.
2192	* generated/maxloc0_16_i16.c: Regenerate.
2193	* generated/maxloc1_4_i16.c: Regenerate.
2194	* generated/maxloc0_8_i16.c: Regenerate.
2195	* generated/maxloc0_4_i4.c: Regenerate.
2196	* generated/maxloc1_8_i8.c: Regenerate.
2197	* generated/maxloc0_8_i4.c: Regenerate.
2198	* generated/maxloc0_16_i4.c: Regenerate.
2199	* generated/maxloc1_16_i8.c: Regenerate.
2200	* generated/maxloc1_4_i4.c: Regenerate.
2201	* generated/maxval_i8.c: Regenerate.
2202	* generated/maxloc0_4_i16.c: Regenerate.
2203	* generated/maxloc1_8_i16.c: Regenerate.
2204	* generated/maxloc0_4_i8.c: Regenerate.
2205	* generated/maxloc1_16_i16.c: Regenerate.
2206	* generated/maxval_i16.c: Regenerate.
2207
22082007-02-04  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2209
2210	PR fortran/30611
2211	* intrinsics/string_intrinsics.c (string_repeat): Don't check
2212	if ncopies is negative.
2213
22142007-02-04  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2215
2216	PR libfortran/30007
2217	* libgfortran.h: Do not prefix symbol name with
2218	__USER_LABEL_PREFIX__ when used in __attribute__((__alias__(...))).
2219
22202007-02-02  Paul Thomas  <pault@gcc.gnu.org>
2221
2222	PR fortran/30284
2223	PR fortran/30626
2224	* io/transfer.c (init_loop_spec, next_array_record): Change to
2225	lbound rather than unity base.
2226
22272007-01-21  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2228
2229	* runtime/error.c: Include sys/time.h before sys/resource.h.
2230
22312007-01-21  Thomas Koenig  <Thomas.Koenig@online.de>
2232
2233	PR libfortran/30525
2234	* intrinsics/string_intrinsics.c(compare_string):  Make
2235	sure that comparisons are done unsigned.
2236
22372007-01-21  Tobias Burnus  <burnus@net-b.de>
2238
2239	PR libfortran/30015
2240	* intrinsics/date_and_time.c (date_and_time): Fix case where time
2241	  can go backwards.
2242	* configure.ac: Remove AC_TRY_RUN test for timezone in
2243	  gettimeofday.
2244	* acinclude.m4: Ditto.
2245	* configure: Regenerate.
2246	* config.h.in: Regenerate.
2247
22482007-01-20  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2249
2250	* m4/misc_specifics.m4: Add _gfortran prefix to specific names.
2251	* m4/specific2.m4: Likewise.
2252	* m4/specific.m4: Likewise.
2253	* intrinsics/f2c_specifics.F90: Likewise.
2254	* intrinsics/selected_int_kind.f90: Add _gfortran prefix.
2255	* intrinsics/selected_real_kind.f90: Likewise.
2256	* intrinsics/dprod_r8.f90: Likewise.
2257	* Makefile.am: Add -fallow-leading-underscore to the
2258	gfor_specific_src files, as well as selected_real_kind.F90
2259	and selected_int_kind.F90
2260	* Makefile.in: Regenerate.
2261	* generated/_sqrt_c8.F90: Regenerate.
2262	* generated/_sign_r16.F90: Regenerate.
2263	* generated/_log_c16.F90: Regenerate.
2264	* generated/_sin_c10.F90: Regenerate.
2265	* generated/_tanh_r4.F90: Regenerate.
2266	* generated/_tanh_r8.F90: Regenerate.
2267	* generated/_log10_r10.F90: Regenerate.
2268	* generated/_aimag_c4.F90: Regenerate.
2269	* generated/_sign_r4.F90: Regenerate.
2270	* generated/_aimag_c8.F90: Regenerate.
2271	* generated/_sign_r8.F90: Regenerate.
2272	* generated/_mod_i4.F90: Regenerate.
2273	* generated/_cos_r16.F90: Regenerate.
2274	* generated/_aint_r10.F90: Regenerate.
2275	* generated/_mod_i8.F90: Regenerate.
2276	* generated/_abs_i16.F90: Regenerate.
2277	* generated/_sqrt_c10.F90: Regenerate.
2278	* generated/_atan2_r4.F90: Regenerate.
2279	* generated/_cos_c4.F90: Regenerate.
2280	* generated/_atan_r16.F90: Regenerate.
2281	* generated/_tanh_r10.F90: Regenerate.
2282	* generated/_atan2_r8.F90: Regenerate.
2283	* generated/_cos_c8.F90: Regenerate.
2284	* generated/_exp_r4.F90: Regenerate.
2285	* generated/_log_r10.F90: Regenerate.
2286	* generated/_exp_r8.F90: Regenerate.
2287	* generated/_abs_r4.F90: Regenerate.
2288	* generated/_abs_r8.F90: Regenerate.
2289	* generated/_sin_r16.F90: Regenerate.
2290	* generated/_tan_r4.F90: Regenerate.
2291	* generated/_tan_r8.F90: Regenerate.
2292	* generated/_sign_i4.F90: Regenerate.
2293	* generated/_sign_i8.F90: Regenerate.
2294	* generated/_exp_c16.F90: Regenerate.
2295	* generated/_sqrt_r16.F90: Regenerate.
2296	* generated/_conjg_c4.F90: Regenerate.
2297	* generated/_conjg_c8.F90: Regenerate.
2298	* generated/_dim_r16.F90: Regenerate.
2299	* generated/_mod_r10.F90: Regenerate.
2300	* generated/_abs_c10.F90: Regenerate.
2301	* generated/_conjg_c16.F90: Regenerate.
2302	* generated/_tan_r16.F90: Regenerate.
2303	* generated/_asinh_r10.F90: Regenerate.
2304	* generated/_abs_i4.F90: Regenerate.
2305	* generated/_abs_i8.F90: Regenerate.
2306	* generated/_acos_r10.F90: Regenerate.
2307	* generated/_exp_r10.F90: Regenerate.
2308	* generated/_acosh_r16.F90: Regenerate.
2309	* generated/_atan2_r16.F90: Regenerate.
2310	* generated/_cos_c16.F90: Regenerate.
2311	* generated/_mod_i16.F90: Regenerate.
2312	* generated/_asin_r4.F90: Regenerate.
2313	* generated/_anint_r16.F90: Regenerate.
2314	* generated/_asin_r8.F90: Regenerate.
2315	* generated/_aimag_c10.F90: Regenerate.
2316	* generated/_exp_c4.F90: Regenerate.
2317	* generated/_sinh_r10.F90: Regenerate.
2318	* generated/_exp_c8.F90: Regenerate.
2319	* generated/_log10_r4.F90: Regenerate.
2320	* generated/_log10_r8.F90: Regenerate.
2321	* generated/_abs_c4.F90: Regenerate.
2322	* generated/_abs_r16.F90: Regenerate.
2323	* generated/_abs_c8.F90: Regenerate.
2324	* generated/_asin_r10.F90: Regenerate.
2325	* generated/_sign_r10.F90: Regenerate.
2326	* generated/_atanh_r16.F90: Regenerate.
2327	* generated/_log_c10.F90: Regenerate.
2328	* generated/_cosh_r16.F90: Regenerate.
2329	* generated/_sin_c16.F90: Regenerate.
2330	* generated/_cos_r10.F90: Regenerate.
2331	* generated/_log10_r16.F90: Regenerate.
2332	* generated/_aint_r16.F90: Regenerate.
2333	* generated/_acos_r4.F90: Regenerate.
2334	* generated/_acos_r8.F90: Regenerate.
2335	* generated/_sqrt_c16.F90: Regenerate.
2336	* generated/_acosh_r4.F90: Regenerate.
2337	* generated/_atan_r10.F90: Regenerate.
2338	* generated/_acosh_r8.F90: Regenerate.
2339	* generated/_sign_i16.F90: Regenerate.
2340	* generated/_tanh_r16.F90: Regenerate.
2341	* generated/_log_r4.F90: Regenerate.
2342	* generated/_log_r8.F90: Regenerate.
2343	* generated/_sin_r4.F90: Regenerate.
2344	* generated/_sin_r8.F90: Regenerate.
2345	* generated/_log_r16.F90: Regenerate.
2346	* generated/_sin_r10.F90: Regenerate.
2347	* generated/_sqrt_r4.F90: Regenerate.
2348	* generated/_exp_c10.F90: Regenerate.
2349	* generated/_sqrt_r8.F90: Regenerate.
2350	* generated/_asinh_r4.F90: Regenerate.
2351	* generated/_sqrt_r10.F90: Regenerate.
2352	* generated/_asinh_r8.F90: Regenerate.
2353	* generated/_dim_r4.F90: Regenerate.
2354	* generated/_dim_r8.F90: Regenerate.
2355	* generated/_dim_r10.F90: Regenerate.
2356	* generated/_cosh_r4.F90: Regenerate.
2357	* generated/_conjg_c10.F90: Regenerate.
2358	* generated/_tan_r10.F90: Regenerate.
2359	* generated/_cosh_r8.F90: Regenerate.
2360	* generated/_mod_r16.F90: Regenerate.
2361	* generated/_abs_c16.F90: Regenerate.
2362	* generated/_cos_r4.F90: Regenerate.
2363	* generated/_asinh_r16.F90: Regenerate.
2364	* generated/_cos_r8.F90: Regenerate.
2365	* generated/_atanh_r4.F90: Regenerate.
2366	* generated/_atanh_r8.F90: Regenerate.
2367	* generated/_acos_r16.F90: Regenerate.
2368	* generated/_anint_r4.F90: Regenerate.
2369	* generated/_acosh_r10.F90: Regenerate.
2370	* generated/_anint_r8.F90: Regenerate.
2371	* generated/_exp_r16.F90: Regenerate.
2372	* generated/_mod_r4.F90: Regenerate.
2373	* generated/_cos_c10.F90: Regenerate.
2374	* generated/_atan2_r10.F90: Regenerate.
2375	* generated/_dim_i16.F90: Regenerate.
2376	* generated/_mod_r8.F90: Regenerate.
2377	* generated/_anint_r10.F90: Regenerate.
2378	* generated/_aint_r4.F90: Regenerate.
2379	* generated/_aint_r8.F90: Regenerate.
2380	* generated/_dim_i4.F90: Regenerate.
2381	* generated/_sinh_r4.F90: Regenerate.
2382	* generated/_log_c4.F90: Regenerate.
2383	* generated/_dim_i8.F90: Regenerate.
2384	* generated/_sinh_r8.F90: Regenerate.
2385	* generated/_log_c8.F90: Regenerate.
2386	* generated/_sin_c4.F90: Regenerate.
2387	* generated/_sin_c8.F90: Regenerate.
2388	* generated/misc_specifics.F90: Regenerate.
2389	* generated/_abs_r10.F90: Regenerate.
2390	* generated/_aimag_c16.F90: Regenerate.
2391	* generated/_atan_r4.F90: Regenerate.
2392	* generated/_sinh_r16.F90: Regenerate.
2393	* generated/_atan_r8.F90: Regenerate.
2394	* generated/_atanh_r10.F90: Regenerate.
2395	* generated/_cosh_r10.F90: Regenerate.
2396	* generated/_sqrt_c4.F90: Regenerate.
2397	* generated/_asin_r16.F90: Regenerate.
2398
23992007-01-19  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2400
2401	PR libfortran/26893
2402	* acinclude.m4 (LIBGFOR_WORKING_GFORTRAN): New check.
2403	* configure.ac: Add call to LIBGFOR_WORKING_GFORTRAN.
2404	* configure: Regenerate.
2405	* config.h.in: Regenerate because it was forgottent in the last
2406	commit.
2407
24082007-01-18  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2409	    Tobias Burnus  <burnus@net-b.de>
2410
2411	PR libfortran/29649
2412	* runtime/environ.c (variable_table): New GFORTRAN_ERROR_DUMPCORE
2413	environment variable.
2414	* runtime/compile_options.c (set_std): Add new argument.
2415	* runtime/error.c (sys_exit): Move from io/unix.c. Add coredump
2416	functionality.
2417	* libgfortran.h (options_t): New dump_core and backtrace members.
2418	(sys_exit): Move prototype.
2419	* io/unix.c (sys_exit): Move to runtime/error.c.
2420	* configure.ac: Add check for getrlimit.
2421	* configure: Regenerate.
2422
24232007-01-17  Tom Tromey  <tromey@redhat.com>
2424
2425	PR libfortran/27107:
2426	* aclocal.m4, configure, Makefile.in: Rebuilt.
2427	* configure.ac: Enable automake dependency tracking.  Update
2428	minimum automake version.
2429
24302007-01-17  Francois-Xavier Coudert  <coudert@clipper.ens.fr>
2431
2432	PR libfortran/27107
2433	* runtime/environ.c: Don't include io/io.h.
2434	* runtime/string.c: Don't include io/io.h.
2435	(compare0): Add cast to avoid warning.
2436	* runtime/error.c: Don't include io/io.h.
2437	(st_printf): Move to io/unix.c.
2438	* intrinsics/flush.c: Delete, contents moved to io/intrinsics.c.
2439	* intrinsics/fget.c: Likewise.
2440	* intrinsics/ftell.c: Likewise.
2441	* intrinsics/tty.c: Likewise.
2442	* libgfortran.h (DEFAULT_RECL, notification_std,
2443	get_unformatted_convert, IOPARM_*, st_parameter_common, unit_convert,
2444	DEFAULT_TEMPDIR): New declarations.
2445	* io/io.h (DEFAULT_RECL, notification_std, get_unformatted_convert,
2446	IOPARM_*, st_parameter_common, unit_convert, DEFAULT_TEMPDIR):
2447	Move to libgfortran.h.
2448	* io/unix.c: Add io/unix.h content.
2449	(st_printf): New function.
2450	* io/intrinsics.c: New file.
2451	* io/unix.h: Remove, contents moved into unix.c.
2452	* libtool-version: Update library version to 3.0.0.
2453	* configure.ac: Update library version to 0.3.
2454	* Makefile.am (intrinsics/fget.c, intrinsics/flush.c,
2455	intrinsics/ftell.c, intrinsics/tty.c, libgfortran.h): Remove targets.
2456	* Makefile.in: Regenerate.
2457	* configure: Regenerate.
2458
24592007-01-12  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
2460
2461	PR libfortran/30435
2462	* io/list_read.c (finish_separator): Don't call next_record.
2463	(list_formatted_read_scalar): Clean up some comments and whitespace.
2464	(nml_read_obj): Whitespace fix.
2465
24662007-01-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
2467
2468	PR libfortran/30162
2469	* io/unix.c (fd_flush): Don't seek if file is not seekable, defined as
2470	s->file_length == -1.
2471	(fd_alloc_w_at): Do not adjust file_length if file is not seekable.
2472	(fd_seek): If not seekable, just return success.
2473	(fd_truncate): If not seekable, no need to truncate.  Return failure
2474	if seek fails and the stream is not a pipe.
2475	(fd_to_stream): Make test for non-seekable file more robust.
2476
24772007-01-01  Steven G. Kargl  <kargls@comcast.net>
2478
2479	* ChangeLog: Copied to ...
2480	* ChangeLog-2006: here.
2481
2482
2483Copyright (C) 2007 Free Software Foundation, Inc.
2484
2485Copying and distribution of this file, with or without modification,
2486are permitted in any medium without royalty provided the copyright
2487notice and this notice are preserved.
2488