1 Sun May 9 18:52:13 1999 Hans-Peter Nilsson <hp@bitrange.com>
3 * f/g77spec.c (lang_specific_driver): Correct bug-report address
6 Thu May 6 12:40:21 1999 Craig Burley <craig@jcb-sc.com>
8 * g77.texi (Arbitrary Concatenation): Put this under
9 "Missing Features" instead of "Projects".
10 (Internals Documentation): Point to new "Front End" chapter.
12 Thu May 6 08:23:52 1999 Craig Burley <craig@jcb-sc.com>
14 * bugs.texi, news.texi: Automatic arrays reportedly working
17 Thu May 6 08:19:31 1999 Craig Burley <craig@jcb-sc.com>
19 * g77.texi (Advantages Over f2c): Expand on this topic.
21 Mon May 3 19:41:48 1999 Craig Burley <craig@jcb-sc.com>
23 * com.c (ffecom_expr_intrinsic_): Fix test of CTIME_subr.
25 Mon May 3 18:11:48 1999 Craig Burley <craig@jcb-sc.com>
27 Reverse order of two arguments to CTIME_subr, DTIME_subr,
28 ETIME_subr, and TTYNAM_subr:
29 * com.c (ffecom_expr_intrinsic_): Reverse the arguments.
30 While at it, set TREE_SIDE_EFFECTS for CTIME_subr and
32 * intdoc.in: Document the new calling sequences.
33 * intrin.def: Reverse the arguments.
34 * news.texi: Document the fact that they changed.
35 * version.c: Bump version.
37 Mon May 3 11:28:14 1999 Craig Burley <craig@jcb-sc.com>
39 * news.texi: Doc upgrade to netlib libf2c as of today.
41 Sun May 2 17:04:28 1999 Craig Burley <craig@jcb-sc.com>
43 * version.c: Bump version.
45 Sun May 2 16:53:01 1999 Craig Burley <craig@jcb-sc.com>
47 Fix compile/19990502-1.f:
48 * ste.c (ffeste_R819B): Don't overwrite tree for temp
49 variable when expanding the assignment into it.
51 Sun Apr 25 20:55:10 1999 Craig Burley <craig@jcb-sc.com>
53 Fix 19990325-0.f and 19990325-1.f:
54 * com.c (ffecom_possible_partial_overlap_): New function.
55 (ffecom_expand_let_stmt): Use it to determine whether to assign
56 to a COMPLEX operand through a temp.
57 * news.texi: Document fix.
59 * version.c: Bump version.
61 Sat Apr 24 12:19:53 1999 Craig Burley <craig@jcb-sc.com>
63 * expr.c (ffeexpr_finished_): Convert DATA implied-do
64 start/end/incr expressions to default INTEGER.
65 Fix some broken conditionals.
66 Clean up some code in the region.
67 * news.c: Document the fix.
69 * version.c: Bump version.
71 Fri Apr 23 02:08:32 1999 Craig Burley <craig@jcb-sc.com>
73 * g77.texi (Compiler Prototypes): Replace "missing" subscript-
74 checking option with something else.
76 Fri Apr 23 01:48:28 1999 Craig Burley <craig@jcb-sc.com>
78 Support new -fsubscript-check and -ff2c-subscript-check options:
79 * com-rt.def (FFECOM_gfrtRANGE): Describe s_rnge, in libf2c/libF77.
80 * com.c (ffecom_subscript_check_, ffecom_arrayref_): New functions.
81 (ffecom_char_args_x_): Use new ffecom_arrayref_ function for
82 FFEBLD_opARRAYREF case.
83 Compute character name, array type, and use new
84 ffecom_subscript_check_ function for FFEBLD_opSUBSTRING case.
85 (ffecom_expr_): Use new ffecom_arrayref_ function.
86 (ffecom_ptr_to_expr): Use new ffecom_arrayref_ function.
87 * g77.texi, news.texi: Document new options.
88 * top.c, top.h: Support new options.
90 * news.texi: Fix up some items to not be in "User-Visible Changes".
92 * ste.c (ffeste_R819B): Fix type for loop variable, to avoid
95 * version.c: Bump version.
97 Tue Apr 20 01:38:57 1999 Craig Burley <craig@jcb-sc.com>
99 * bugs.texi, news.texi: Clarify -malign-double situation.
101 Tue Apr 20 01:15:25 1999 Craig Burley <craig@jcb-sc.com>
103 * stb.c (ffestb_R5282_): Convert DATA repeat count
104 to default INTEGER, to avoid problems downstream.
106 * version.c: Bump version.
108 Mon Apr 19 21:36:48 1999 Craig Burley <craig@jcb-sc.com>
110 * ste.c (ffeste_R819B): Start the loop before expanding
111 the termination expression.
113 * version.c: Bump version.
115 Sun Apr 18 21:53:58 1999 Craig Burley <craig@jcb-sc.com>
117 * com.c (ffecom_sym_transform_): COMMON and EQUIVALENCE
118 variables have constant addresses (EQUIVALENCE only if
119 containing aggregate is static).
121 Sat Apr 17 16:55:59 1999 Craig Burley <craig@jcb-sc.com>
123 * bugs.texi, ffe.texi, g77.texi, g77install.texi, news.texi:
124 Clean up @code{} vs. @samp{}.
125 Clean up dashes (`--') vs. @minus{} vs. `---'.
127 * ffe.texi: Add copyright header.
129 * g77.texi, lang-options.h, news.texi, top.c (ffe_decode_option):
130 Remove support for -fugly option.
131 Clarify that -fugly-logint is needed instead of -fugly
132 to work around using .EQ./.NE. on LOGICAL operands.
133 Explain more about why -fugly-logint is bad juju.
135 * g77.texi (Missing Features): Describe READONLY as a missing
136 feature. Describe AUTOMATIC better.
138 * news.texi: Mention libf2c upgrade.
140 Sat Apr 17 14:05:53 1999 Craig Burley <craig@jcb-sc.com>
142 Make a place for front-end internals documentation:
143 * Make-lang.in (f/g77.info, f/g77.dvi): Depend on f/ffe.texi.
144 * ffe.texi: New file, containing docs on front-end internals.
145 * g77.texi: New chapter for, and inclusion of, ffe.texi.
147 * g77.texi: Fix an index entry.
149 Sat Apr 17 13:53:43 1999 Craig Burley <craig@jcb-sc.com>
151 Rewrite to use block/scope structure of GBE and to ensure
152 variables (especially those going on stack/reg) are declared
153 before executable code generated:
154 * bld.c (ffebld_new_item, ffebld_new_one, ffebld_new_two):
156 * bld.h (ffebld_item_hook, ffebld_item_set_hook,
157 ffebld_nonter_hook, ffebld_nonter_set_hook): Ditto.
158 * bld.h (ffebld_basictype, ffebld_kind, ffebld_kindtype,
159 ffebld_rank, ffebld_where): New convenience macros (used
160 by rest of this patch).
161 * com.c, com.h (ffecom_push_calltemps, ffecom_pop_calltemps,
162 ffecom_push_tempvar, ffecom_pop_tempvar): Remove temp-var-
164 * com.c (ffecom_call_, ffecom_call_binop_, ffecom_tree_divide_,
165 ffecom_call_gfrt): Support passing hooks for temp-var info.
166 (ffecom_expr_power_integer_): Takes opPOWER expression, instead
167 of its left and right operands, so it can get at the hook.
168 (ffecom_prepare_let_char_, ffecom_prepare_arg_ptr_to_expr,
169 ffecom_prepare_end, ffecom_prepare_expr_, ffecom_prepare_expr_rw,
170 ffecom_prepare_expr_w, ffecom_prepare_return_expr,
171 ffecom_prepare_ptr_to_expr): New functions supporting expression
173 (bison_rule_compstmt_): Return the tree, as in the CFE.
174 (delete_block): New function, from CFE.
175 (kept_level_p): New function, from CFE, modified.
176 (ffecom_start_compstmt, ffecom_end_compstmt): New functions,
177 replacing ffecom_start_compstmt_ and ffecom_end_compstmt_ macros,
178 and they do real work.
179 (struct binding_level): Add prep_state member. Initialize to 0.
180 (ffecom_get_invented_identifier): Now takes either or both a
181 string and an integer, using -1 to denote no integer.
182 (ffecom_do_entry_): Disallow temp-var generation via expressions
183 in body of function, since the exprs aren't prescanned.
184 (ffecom_expr_rw): Now takes destination tree.
185 (ffecom_expr_w): New function, now used in some places
186 ffecom_expr_rw had been used.
187 (ffecom_expr_intrinsic_): Move huge f2c-related comment to bottom
188 of source file, to avoid annoying problems editing com.c using
190 (ffecom_expr_power_integer_): Make a temp var for division, if
192 Handle expanded statement expression as does CFE.
193 (ffecom_start_progunit_): Disallow temp-var generation in body
194 of function, since expressions are not prescanned at this level.
195 (ffecom_sym_transform_): Transform ASSIGN variables as well,
196 so these are all transformed up front, before code-generation
198 (ffecom_arg_ptr_to_const_expr, ffecom_const_expr,
199 ffecom_ptr_to_const_expr): New functions to transform expressions
200 only if the results will surely be constants.
201 (ffecom_arg_ptr_to_expr): Precompute size, for convenience
203 (ffecom_expand_let_stmt): Guess at usability of destination
204 pre-expansion, to provide better prescan preparation (fewer
206 (ffecom_init_0): Disallow temp-var generation in global scope.
207 (ffecom_type_expr): New function, returns just the type tree
209 (start_function): Disallow temp-var generation in parm scope.
210 (incomplete_type_error): Fix introductory comment.
211 (poplevel): Update (somewhat) from CFE.
212 (pushlevel): Update (somewhat) from CFE.
213 * stc.c (ffestc_R838): Mark ASSIGNed variable as so.
214 * std.c (ffestd_stmt_pass_, ffestd_R803, ffestd_R804, ffestd_R805,
215 ffestd_R806): Remember and pass through the ffestw block info
216 for these (IFTHEN, ELSEIF, ELSE, and ENDIF) statements.
217 * ste.c (ffeste_end_iterdo_): Now takes ffestw block argument.
218 (ffeste_io_inlist_): Add prototype.
219 (ffeste_f2c_*): Macros rewritten, new ones added.
220 (ffeste_start_block_, ffeste_end_block_, ffeste_start_stmt_,
221 ffeste_end_stmt_): New macros/functions, depending on whether
222 checking is enabled, to keep track of symmetry of other ste.c code.
223 (ffeste_begin_iterdo_, ffeste_end_iterdo_, ffeste_io_impdo_,
224 ffeste_io_dofio_, ffeste_io_dolio_, ffeste_io_douio_,
225 ffeste_io_ialist_, ffeste_io_cilist_, ffeste_io_cllist_,
226 ffeste_icilist_, ffeste_io_inlist_, ffeste_io_olist_,
227 ffeste_subr_beru_, ffeste_do, ffeste_end_R807, ffeste_R737A,
228 ffeste_R803, ffeste_R804, ffeste_R805, ffeste_R806, ffeste_R807,
229 ffeste_R809, ffeste_R810, ffeste_R811, ffeste_R819A, ffeste_R819B,
230 ffeste_R837, ffeste_R838, ffeste_R839, ffeste_R840, ffeste_R904,
231 ffeste_R907, ffeste_R909_start, ffeste_R909_item, ffeste_R909_finish,
232 ffeste_R910_start, ffeste_R910_item, ffeste_R910_finish,
233 ffeste_R911_start, ffeste_R911_item, ffeste_R911_finish,
234 ffeste_R923A, ffeste_R1212, ffeste_R1227): Prescan/prepare
235 all pertinent expressions, update to new com.c interface, etc.
236 (ffeste_io_impdo_): Relocate.
237 (ffeste_R834, ffeste_R835, ffeste_R836, ffeste_R1226): Don't
238 bother calling clear_momentary, nothing was generated.
239 (ffeste_R842, ffeste_R843): Update to new com.c interface.
240 (ffeste_R1226): Don't try to stuff error_mark_node's DECL_INITIAL.
241 (ffeste_terminate_2): When checking enabled, make sure all blocks
242 and statements have been ended.
243 * ste.h (ffeste_R803, ffeste_R804, ffeste_R805, ffeste_R806):
244 These now take ffestw block argument.
245 (ffeste_terminate_2): When checking enabled, it's a function, not
247 * stw.h (struct _ffestw_): New variable for IFTHEN.
248 (ffestw_ifthen_fake_else, ffestw_set_ifthen_fake_else): New
250 * symbol.c, symbol.h: Support new ASSIGN'ed-to info.
252 * com.c: Clean up commentary per GNU coding standards.
254 * bld.h (ffebld_size, ffebld_size_known): Canonize.
256 * version.c: Bump version.
258 Sun Apr 11 21:33:33 1999 Mumit Khan <khan@xraylith.wisc.edu>
260 * g77spec.c (lang_specific_driver): Check whether MATH_LIBRARY is
261 null to decide whether to use it.
263 Wed Apr 7 09:47:09 1999 Kaveh R. Ghazi <ghazi@snafu.rutgers.edu>
265 * ansify.c (die): Specify void argument.
267 * intdoc.c (family_name, dumpgen, dumpspec, dumpimp,
268 argument_info_ptr, argument_info_string, argument_name_ptr,
269 argument_name_string, elaborate_if_complex,
270 elaborate_if_maybe_complex, elaborate_if_real, print_type_string):
272 (main): Mark parameter `argv' with ATTRIBUTE_UNUSED.
273 (_ffeintrin_name_, _ffeintrin_gen_, _ffeintrin_spec_,
274 _ffeintrin_imp_, cc_pair, descriptions, summaries): Const-ify a char*.
276 Mon Apr 5 11:57:54 1999 Donn Terry (donn@interix.com)
278 * Make-lang.in (HOST_CFLAGS): compute dynamically.
280 Mon Apr 5 02:11:23 1999 Craig Burley <craig@jcb-sc.com>
282 Fix bugs exposed by configuring with --enable-checking:
283 * com.c (ffecom_do_entry_, ffecom_expr_, ffecom_arg_ptr_to_expr,
284 ffecom_list_expr, ffecom_list_ptr_to_expr, finish_function,
285 pop_f_function_context, store_parm_decls, poplevel): Handle
286 error_mark_node properly.
287 * ste.c (ffeste_begin_iterdo_, ffeste_end_iterdo_): Ditto.
288 * version.c: Bump version.
290 Sat Apr 3 23:57:56 1999 Craig Burley <craig@jcb-sc.com>
292 * g77.texi: Fix up docs for -fset-g77-defaults, and
293 describe how internal consistency checking now happens.
294 (Should have been done for EGCS version 1.1.)
296 Sat Apr 3 23:29:33 1999 Craig Burley <craig@jcb-sc.com>
298 * bugs.texi, g77.texi, lang-options.h, news.texi, top.c:
299 Make -fno-emulate-complex the default, as COMPLEX support
300 in the back end is now believed to be working.
302 * version.c: Bump version.
304 Fri Apr 2 13:33:16 1999 Craig Burley <craig@jcb-sc.com>
306 * g77.texi: -malign-double now works.
307 Give URL for alignment-testing package.
308 * news.texi: -malign-double now works.
310 Fri Apr 2 12:49:12 1999 Craig Burley <craig@jcb-sc.com>
312 * g77.texi (Funding GNU Fortran): Dude's got a web page.
315 Tue Mar 30 12:04:11 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
317 * sta.c (ffesta_ffebad_1sp, ffesta_ffebad_1st, ffesta_ffebad_2st):
320 * sta.h (ffesta_ffebad_1sp, ffesta_ffebad_1st, ffesta_ffebad_2st):
323 * stb.c (ffestb_local_u_): Likewise.
324 (ffestb_do, ffestb_dowhile, ffestb_else, ffestb_elsexyz,
325 ffestb_else3_, ffestb_endxyz, ffestb_goto, ffestb_let,
326 ffestb_type, ffestb_type1_, ffestb_varlist, ffestb_R423B,
327 ffestb_R522, ffestb_R528, ffestb_R542, ffestb_R834, ffestb_R835,
328 ffestb_R838, ffestb_R841, ffestb_R1102, ffestb_blockdata,
329 ffestb_R1212, ffestb_R1228, ffestb_V009, ffestb_module,
330 ffestb_R809, ffestb_R810, ffestb_R10014_, ffestb_R10015_,
331 ffestb_R10018_, ffestb_R1107, ffestb_R1202, ffestb_R12026_,
332 ffestb_S3P4, ffestb_V012, ffestb_V014, ffestb_V025, ffestb_V0255_,
333 ffestb_V020, ffestb_dimlist, ffestb_dummy, ffestb_R524,
334 ffestb_R547, ffestb_decl_chartype, ffestb_decl_dbltype,
335 ffestb_decl_gentype, ffestb_decl_recursive, ffestb_decl_entsp_2_,
336 ffestb_decl_func_, ffestb_V003, ffestb_V016, ffestb_V027,
337 ffestb_decl_R539): Likewise.
339 * stb.h (_ffestb_args_): Likewise.
341 * stc.c (ffestc_subr_binsrch_, ffestc_subr_is_present_,
342 ffestc_subr_speccmp_, ffestc_R904, ffestc_R907): Likewise.
344 * std.c (ffestd_R1001dump_1005_1_, ffestd_R1001dump_1005_2_,
345 ffestd_R1001dump_1005_3_, ffestd_R1001dump_1005_4_,
346 ffestd_R1001dump_1005_5_, ffestd_R1001dump_1010_1_,
347 ffestd_R1001dump_1010_2_, ffestd_R1001dump_1010_3_,
348 ffestd_R1001dump_1010_4_, ffestd_R1001dump_1010_5_): Likewise.
350 * ste.c (ffeste_begin_iterdo_, ffeste_subr_file_): Likewise.
352 * sts.c (ffests_printf_1D, ffests_printf_1U, ffests_printf_1s,
353 ffests_printf_2Us, ffests_puts, ffests_puttext): Likewise.
355 * sts.h (ffests_printf_1D, ffests_printf_1U, ffests_printf_1s,
356 ffests_printf_2Us, ffests_puts, ffests_puttext): Likewise.
358 * stt.c (ffestt_exprlist_drive, ffestt_implist_drive,
359 ffestt_tokenlist_drive): Add prototype arguments.
361 * stt.h (ffestt_exprlist_drive, ffestt_implist_drive,
362 ffestt_tokenlist_drive): Likewise.
364 * stu.c (ffestu_dummies_transition_): Likewise.
365 (ffestu_sym_end_transition): Const-ify a char*.
367 * stw.c (ffestw_display_state, ffestw_new, ffestw_pop): Add
370 * stw.h (ffestw_display_state, ffestw_new, ffestw_pop): Likewise.
372 * version.c (ffe_version_string): Const-ify a char*.
374 * version.h (ffe_version_string): Likewise.
376 Sat Mar 27 13:00:43 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
378 * bad.c (_ffebad_message_, ffebad_string_, ffebad_message_,
379 ffebad_bufputs_, ffebad_bufputs_, ffebad_start_, ffebad_string,
380 ffebad_finish): Const-ify a char*.
382 * bld.c (ffebld_op_string_, ffebld_op_string): Likewise.
384 * bld.h (ffebld_op_string): Likewise.
386 * com.c (ffecom_arglist_expr_, ffecom_build_f2c_string_,
387 ffecom_debug_kludge_, ffecom_f2c_make_type_,
388 ffecom_get_appended_identifier_, ffecom_get_identifier_,
389 ffecom_gfrt_args_): Likewise.
390 (ffecom_convert_narrow_, ffecom_convert_widen_): Add prototype.
391 (builtin_function, ffecom_gfrt_name_, ffecom_gfrt_argstring_,
392 ffecom_arglist_expr_, ffecom_build_f2c_string_,
393 ffecom_debug_kludge_, ffecom_f2c_make_type_,
394 ffecom_get_appended_identifier_, ffecom_get_external_identifier_,
395 ffecom_get_identifier_, ffecom_decl_field,
396 ffecom_get_invented_identifier, lang_print_error_function,
397 skip_redundant_dir_prefix, read_name_map, print_containing_files):
399 (savestring): Remove, use `xstrdup' instead.
401 * com.h (ffecom_decl_field, ffecom_get_invented_identifier):
404 * data.c (ffebld, ffedata_gather_): Make explicitly static.
406 * expr.c (ffeexpr_isdigits_, ffeexpr_percent_,
407 ffeexpr_reduced_concatenate_, ffeexpr_nil_real_,
408 ffeexpr_nil_number_, ffeexpr_nil_number_period_,
409 ffeexpr_nil_number_real_, ffeexpr_token_real_,
410 ffeexpr_token_number_, ffeexpr_token_number_period_,
411 ffeexpr_token_number_real_): Const-ify a char*.
413 * fini.c (xspaces): Likewise.
415 * global.c (ffeglobal_type_string_): Likewise.
416 (ffeglobal_drive): Protoize.
417 (ffeglobal_proc_def_arg): Const-ify a char*.
419 * global.h (ffeglobal_drive): Protoize.
420 (ffeglobal_proc_def_arg): Const-ify a char*.
422 * implic.c (ffeimplic_none, ffeimplic_peek_symbol_type):
425 * implic.h (ffeimplic_peek_symbol_type): Likewise.
427 * info.c (ffeinfo_basictype_string_, ffeinfo_kind_message_,
428 ffeinfo_kind_string_, ffeinfo_kindtype_string_,
429 ffeinfo_where_string_, ffeinfo_basictype_string,
430 ffeinfo_kind_message, ffeinfo_kind_string,
431 ffeinfo_kindtype_string, ffeinfo_where_string): Likewise.
433 * info.h (ffeinfo_basictype_string, ffeinfo_kind_message,
434 ffeinfo_kind_string, ffeinfo_kindtype_string,
435 ffeinfo_where_string): Likewise.
437 * intrin.c (_ffeintrin_name_, _ffeintrin_gen_, _ffeintrin_spec_,
438 _ffeintrin_imp_, ffeintrin_check_, ffeintrin_cmp_name_,
439 ffeintrin_fulfill_specific, ffeintrin_init_0,
440 ffeintrin_is_actualarg, ffeintrin_is_intrinsic,
441 ffeintrin_name_generic, ffeintrin_name_implementation,
442 ffeintrin_name_specific): Likewise.
444 * intrin.h (ffeintrin_is_intrinsic, ffeintrin_name_generic,
445 ffeintrin_name_implementation, ffeintrin_name_specific): Likewise.
447 * lex.c (ffelex_type_string_, ffelex_token_new_character,
448 ffelex_token_new_name, ffelex_token_new_names,
449 ffelex_token_new_number): Likewise.
451 * lex.h (ffelex_token_new_character, ffelex_token_new_name,
452 ffelex_token_new_names, ffelex_token_new_number): Likewise.
454 * malloc.c (malloc_types_, malloc_pool_new, malloc_new_inpool_,
455 malloc_new_zinpool_): Likewise.
457 * malloc.h (malloc_new_inpool_, malloc_new_zinpool_,
458 malloc_pool_new): Likewise.
460 * name.c (ffename_space_drive_global, ffename_space_drive_symbol):
463 * name.h (ffename_space_drive_global, ffename_space_drive_symbol):
466 * symbol.c (ffesymbol_state_name_, ffesymbol_attr_name_,
467 ffesymbol_attrs_string): Const-ify a char*.
468 (ffesymbol_drive, ffesymbol_drive_sfnames): Protoize.
469 (ffesymbol_state_string): Const-ify a char*.
471 * symbol.h (ffesymbol_attrs_string): Likewise.
472 (ffesymbol_drive, ffesymbol_drive_sfnames): Protoize.
473 (ffesymbol_state_string): Const-ify a char*.
475 * target.c (ffetarget_layout): Likewise.
477 * target.h (ffetarget_layout): Likewise.
479 1999-03-25 Zack Weinberg <zack@rabi.columbia.edu>
481 * Make-lang.in: Remove all references to g77.o/g77.c.
484 1999-03-21 Manfred Hollstein <manfred@s-direktnet.de>
486 * Makefile.in (g77$(exeext)): Depend on intl.o. Link in intl.o.
488 Wed Mar 17 11:39:44 1999 Craig Burley <craig@jcb-sc.com>
490 * news.texi: Editorial fix.
492 Mon Mar 15 17:12:07 1999 Craig Burley <craig@jcb-sc.com>
494 * bugs.texi, g77.texi, news.texi: Editorial fixes.
496 Sat Mar 13 17:51:55 1999 Craig Burley <craig@jcb-sc.com>
498 Fix 19990313-0.f, 19990313-1.f, 19990313-2.f, 19990313-3.f:
499 * bad.def (FFEBAD_NOCANDO): New error code for internal use only.
500 * expr.c (ffeexpr_collapse_convert): If FFEBAD_NOCANDO returned
501 by convertor, just return original expr.
502 * target.h: Return FFEBAD_NOCANDO for (usually) 64-bit
503 conversions that aren't yet working properly.
504 * news.texi: Explain.
506 * version.c: Bump version.
508 Sat Mar 13 14:26:55 1999 Craig Burley <craig@jcb-sc.com>
510 * RELEASE-PREP: New file, lists things to do for a release.
512 * Make-lang.in, bugs.texi, bugs0.texi, g77.texi, g77install.texi,
513 install0.texi, news.texi, news0.texi: Accommodate new doc
515 Consolidate news items. Don't describe old news items in
516 various generated docs.
517 Don't describe FSF-g77 installation stuff in various EGCS-g77
519 Move description of AUTOMATIC to more suitable location.
520 * root.texi: New file for new doc architecture.
522 Thu Mar 11 17:32:55 1999 Craig Burley <craig@jcb-sc.com>
524 * g77.texi: Add AUTOMATIC to list of unsupported extensions.
526 Sat Mar 6 02:28:35 1999 Craig Burley <craig@jcb-sc.com>
528 Warn about non-Y2K-compliant intrinsics:
529 * bad.def (FFEBAD_INTRINSIC_Y2KBAD): New diagnostic.
530 * intrin.def (FFEINTRIN_impDATE, FFEINTRIN_impIDATE_vxt):
531 Use new DEFIMPY macro to flag these as non-Y2K-compliant.
532 * intdoc.c (DEFIMPY): Support new Y2K macro.
533 * intrin.h (DEFIMPY): Ditto.
534 * intrin.c (DEFIMPY): Ditto.
535 (ffeintrin_fulfill_generic, ffeintrin_fulfill_specific):
536 Warn about invocation of non-Y2K-compliant intrinsic.
537 * com-rt.def (FFECOM_gfrtDATE, FFECOM_gfrtVXTIDATE):
538 Rename external procedure names, to keep previously-
539 compiled (sans-new-warnings) code from linking to
541 * g77.texi: Document all this stuff.
542 * news.texi: Spread the joy.
543 * version.c: Bump version.
545 Fri Mar 5 13:22:44 1999 Craig Burley <craig@jcb-sc.com>
547 * news.texi: Relocate IDATE (VXT) fix: we put it in 1.1.2
548 so describe it there, instead of under 1.2.
550 Wed Mar 3 00:57:56 1999 Craig Burley <craig@jcb-sc.com>
552 * news.texi: IDATE (VXT) fixed to return year as 0..99.
554 Wed Mar 3 00:43:49 1999 Craig Burley <craig@jcb-sc.com>
556 * g77.texi: Add remaining changes pending from Dave Love.
558 Wed Mar 3 00:38:42 1999 Craig Burley <craig@jcb-sc.com>
560 * bugs.texi, news.texi: Conditionalize cross-references
561 on non-html processing, providing temporary HTML "links".
563 * g77.texi: Fix up a reference.
565 Wed Mar 3 00:12:31 1999 Craig Burley <craig@jcb-sc.com>
567 * news.texi, bugs.texi: Delete fixed bugs, make one
568 of them into the appropriate news item.
570 Wed Mar 3 00:05:52 1999 Craig Burley <craig@jcb-sc.com>
572 * news.texi: Copy over 1.1.2 news.
574 1999-03-02 Craig Burley <craig@jcb-sc.com>
576 * g77.texi (Bug Reporting): Clarify whether to use -E.
577 Clarify other instructions.
579 1999-02-27 Craig Burley <craig@jcb-sc.com>
581 * lang-specs.h: Fix specs to pass `-ax' as well as `-a' option.
583 1999-02-26 Craig Burley <craig@jcb-sc.com>
585 * intdoc.in (STAT_func, STAT_subr,
586 FSTAT_func, FSTAT_subr, LSTAT_func, LSTAT_subr):
587 Properly order array elements. Specify N/A return values.
589 1999-02-26 Craig Burley <craig@jcb-sc.com>
591 * intdoc.in (DATE_AND_TIME): Explain that VALUES(7) holds
592 seconds, and VALUES(8), therefore, milliseconds.
594 1999-02-26 Craig Burley <craig@jcb-sc.com>
596 * news.texi: Clarify IOSTAT= fix.
598 1999-02-25 Richard Henderson <rth@cygnus.com>
600 * lang-specs.h: Define __FAST_MATH__ when appropriate.
602 1999-02-25 Craig Burley <craig@jcb-sc.com>
604 * g77.texi: Clarify/index lack of run-time allocation for
607 1999-02-25 Andreas Jaeger <aj@arthur.rhein-neckar.de>
609 * f/intdoc.in: Add missing `,' after cross references.
611 1999-02-20 Craig Burley <craig@jcb-sc.com>
613 * Make-lang.in (f77.install-common, f77.install-info,
614 f77.install-man, f77.uninstall): Use `$(prefix)/lang-f77'
615 instead of `lang-f77' for flag file, to be sure of a
616 writable directory, and remove the flag file after each
617 operation to keep things clean.
619 1999-02-20 Craig Burley <craig@jcb-sc.com>
621 * g77.texi: Properly attribute Priest document; clarify
622 that it is in the .ps version of the Goldberg document.
624 1999-02-19 Craig Burley <craig@jcb-sc.com>
626 * bugs0.texi, bugs.texi, install0.texi, g77install.texi,
627 news0.texi, news.texi: Update copyright dates.
628 Clarify which files are source, which are derived,
629 and remind maintainers where copyright dates are sourced.
630 * BUGS, INSTALL, NEWS: Regenerated.
632 1999-02-19 Craig Burley <craig@jcb-sc.com>
634 * global.c (ffeglobal_ref_progunit_): Warn about a function
635 definition that disagrees with the type of a previous reference.
636 Improve commentary. Fix a couple of minor bugs. Clean up
638 * news.texi: Spread the joy.
640 1999-02-18 Craig Burley <craig@jcb-sc.com>
642 * expr.c (ffeexpr_finished_): Disallow non-default INTEGER
643 as argument for FILEINT and FILEASSOC as lhs.
644 * news.texi: Document fix.
647 1999-02-18 Craig Burley <craig@jcb-sc.com>
649 * g77.texi: Clarify -fno-globals vs. -Wno-globals.
651 1999-02-18 Craig Burley <craig@jcb-sc.com>
653 * intdoc.in (LOG10): Fix typo.
655 1999-02-17 Ulrich Drepper <drepper@cygnus.com>
657 * intdoc.in: Fix typo.
659 1999-02-17 Craig Burley <craig@jcb-sc.com>
661 * g77.texi, intdoc.in: Document Y2K and some other known
663 * intrin.def (DTIME, FDATE): Fix capitalization of
664 case-sensitive forms of these intrinsics' names.
666 1999-02-17 Dave Love <fx@gnu.org>
668 * intdoc.in: Say `common' logarithm for log10.
670 1999-02-16 Ulrich Drepper <drepper@cygnus.com>
672 * g77.texi: Add missing @ in email addresses.
674 1999-02-15 Craig Burley <craig@jcb-sc.com>
676 * *.*: Delete my (old) email address in most places, change it
679 1999-02-14 Craig Burley <craig@jcb-sc.com>
683 1999-02-14 Craig Burley <craig@jcb-sc.com>
685 * version.c: Bump for 1998-10-02 change (forgot to do this
688 1999-02-14 Craig Burley <craig@jcb-sc.com>
690 * lang-specs.h, g77.1, g77.texi, news.texi: Recognize `.FOR'
691 and `.FPP' as well as `.for' and `.fpp'.
693 1999-02-14 Craig Burley <craig@jcb-sc.com>
695 * intdoc.in (LOG10): Fix description.
697 1999-02-14 Craig Burley <craig@jcb-sc.com>
699 * news.texi: Mention fix for SIGNAL invocation circa egcs-1.1.
701 1999-02-14 Craig Burley <craig@jcb-sc.com>
703 * g77.texi, g77install.texi, bugs.texi, g77install.texi: Clean
704 up and improve indexing, and some other areas of docs.
706 1999-02-14 Craig Burley <craig@jcb-sc.com>
708 * intdoc.in (MCLOCK8, TIME8): Warn about lower range on
711 Sat Feb 6 18:02:17 1999 Jeffrey A Law (law@cygnus.com)
713 * g77.texi: Update email addresses.
715 Wed Feb 3 22:50:17 1999 Marc Espie <Marc.Espie@liafa.jussieu.fr>
717 * Make-lang.in (g77$(exeext)): Get choose-temp.o, pexecute.o and
718 mkstemp.o from libiberty.
720 1999-02-01 Zack Weinberg <zack@rabi.columbia.edu>
722 * top.c: Don't define ffe_is_ident_. Don't process
724 * top.h: Remove declaration of ffe_is_ident_ and macros
725 ffe_is_ident() and ffe_set_is_ident().
726 * lex.c: Use flag_no_ident instead of ffe_is_ident().
728 Sun Jan 31 20:34:29 1999 Zack Weinberg <zack@rabi.columbia.edu>
730 * lang-specs.h: Map -Qn to -fno-ident.
732 Tue Jan 5 22:12:41 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
734 * Make-lang.in (g77.o): Depend on prefix.h.
736 Fri Nov 27 13:10:32 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
738 * fini.c: Rename variable `spaces' to `xspaces' to avoid
739 conflicting with function `spaces' from libiberty.
741 * g77spec.c: Don't prototype libiberty functions.
742 * malloc.c: Likewise.
744 1998-11-20 Dave Love <d.love@dl.ac.uk>
746 * g77.texi: Assorted minor changes.
748 1998-11-19 Dave Love <d.love@dl.ac.uk>
750 * bugs.texi: Formatting changes from Craig.
752 * intdoc.in: Terminate some @xrefs with `,'.
754 1998-11-19 Manfred Hollstein <manfred@s-direktnet.de>
756 * Make-lang.in (mandir): Replace all uses of $(mandir) by $(man1dir).
758 Mon Nov 9 23:15:39 1998 Jeffrey A Law (law@cygnus.com)
760 * g77.texi, news.texi: Updates from Craig.
762 Sun Nov 8 17:47:56 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
764 * Makefile.in (INCLUDES): Add "-I$(srcdir)/../../include".
766 Sat Nov 7 15:58:54 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
768 * g77spec.c: Don't include gansidecl.h.
769 * output.j: Likewise.
771 1998-11-04 Dave Love <d.love@dl.ac.uk>
773 * g77.texi: Small formatting/indexing fixes.
775 Mon Oct 12 20:41:59 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
777 * bad.c (ffebad_finish): Change type of variable `c' to unsigned
778 char, change type of variable `s' to unsigned char *.
780 * com.c (ffecom_symbol_null_): Add missing initializers.
782 * fini.c (MAXNAMELEN): Undef it before defining.
784 * implic.c (ffeimplic_lookup_): Change type of parameter `c' to
787 * intrin.c (ffeintrin_init_0): Cast the argument of ctype macros
790 * lex.c (ffelex_splice_tokens): Change type of variable `p' to
792 (ffelex_token_name_from_names): Cast the argument of
793 `ffelex_is_firstnamechar' to (unsigned char).
794 (ffelex_token_names_from_names): Likewise.
795 (ffelex_token_new_name): Likewise.
796 (ffelex_token_new_names): Likewise.
798 * malloc.c (malloc_root_): Add missing initializer.
800 * stb.c (ffestb_do): Change type of variable `p' to unsigned char *.
801 (ffestb_else) Likewise.
802 (ffestb_else3_) Likewise.
803 (ffestb_endxyz) Likewise.
804 (ffestb_goto) Likewise.
805 (ffestb_let) Likewise.
806 (ffestb_varlist) Likewise.
807 (ffestb_R522) Likewise.
808 (ffestb_R528) Likewise.
809 (ffestb_R834) Likewise.
810 (ffestb_R835) Likewise.
811 (ffestb_R838) Likewise.
812 (ffestb_R1102) Likewise.
813 (ffestb_blockdata) Likewise.
814 (ffestb_R1212) Likewise.
815 (ffestb_R810) Likewise.
816 (ffestb_R10014_): Cast the argument of `ffelex_is_firstnamechar'
818 (ffestb_V014): Change type of variable `p' to unsigned char *.
819 (ffestb_dummy) Likewise.
820 (ffestb_R524) Likewise.
821 (ffestb_R547) Likewise.
822 (ffestb_decl_chartype) Likewise.
823 (ffestb_decl_dbltype) Likewise.
824 (ffestb_decl_gentype) Likewise.
825 (ffestb_decl_entsp_2_) Likewise.
826 (ffestb_V027) Likewise.
827 (ffestb_decl_R539) Likewise.
829 * top.c (ffe_decode_option): Mark parameter `argc' with
832 * where.c (ffewhere_unknown_line_): Add missing initializers.
834 1998-10-02 Dave Love <d.love@dl.ac.uk>
836 * com.c (ffecom_expr_intrinsic_): Fix return type for RAND.
838 Thu Oct 1 10:43:45 1998 Nick Clifton <nickc@cygnus.com>
840 * lex.c: Replace occurances of HANDLE_SYSV_PRAGMA with
841 HANDLE_GENERIC_PRAGMAS.
843 Mon Sep 28 04:22:00 1998 Jeffrey A Law (law@cygnus.com)
845 * news.texi: Update from Craig.
847 1998-09-23 Dave Love <d.love@dl.ac.uk>
849 * g77.texi: Additions about `/*', trailing comments and cpp.
851 1998-09-18 Dave Love <d.love@dl.ac.uk>
853 * g77.texi: Various additions and some small fixes.
855 Thu Sep 10 14:55:44 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl>
857 * Make-lang.in (f77.install-common): Add missing "else true;".
859 1998-09-07 Dave Love <d.love@dl.ac.uk>
861 * ChangeLog.egcs: Deleted. Entries merged here.
863 1998-09-05 Dave Love <d.love@dl.ac.uk>
865 * Makefile.in (LDFLAGS): Set from BOOT_LDFLAGS.
866 (F771_LDFLAGS): Variable dispensed with.
868 Fri Sep 4 19:53:34 1998 Craig Burley <burley@gnu.org>
870 * intdoc.in: Minor editorial tweaks.
872 Fri Sep 4 18:35:52 1998 Craig Burley <burley@gnu.org>
874 * lang-options.h: Convert to wrap option and doc string
875 in a new macro invocation, FTNOPT, so the nearly identical
876 list can be used in FSF-g77.
878 Fri Sep 4 18:35:52 1998 Craig Burley <burley@gnu.org>
880 * Makefile.in (fini.o): Don't define USE_HCONFIG here.
881 * fini.c: Define USE_HCONFIG here instead, so deps-kinda
882 picks up correct dependency.
884 * Makefile.in (proj-h.o): Fix dependencies list.
886 Wed Sep 02 09:25:29 1998 Nick Clifton <nickc@cygnus.com>
888 * lex.c (ffe_lex_hash): Change how HANDLE_PRAGMA and
889 HANDLE_SYSV_PRAGMA would be called if they pragma parsing was
890 enabled in this code.
891 Generate warning messages if unknown pragmas are encountered.
892 (pragma_getc): New function: retrieves characters from the
893 input stream. Defined when HANDLE_PRAGMA is defined.
894 (pragma_ungetc): New function: replaces characters back into the
895 input stream. Defined when HANDLE_PRAGMA is defined.
897 Tue Sep 1 10:00:21 1998 Craig Burley <burley@gnu.org>
899 * bugs.texi, g77.1, g77.texi, intdoc.in, news.texi: Doc updates
902 1998-08-23 Dave Love <d.love@dl.ac.uk>
904 * g77.texi: Increment `version-g77' and fix a few typos.
906 Tue Aug 18 21:41:31 1998 Jeffrey A Law (law@cygnus.com)
908 * Make-lang.in: Add several "else true" clauses to deal with lame
911 Tue Aug 11 08:12:14 1998 H.J. Lu (hjl@gnu.org)
913 * Make-lang.in (g77.o): Touch lang-f77 before checking it.
915 1998-08-09 Dave Love <d.love@dl.ac.uk>
917 * Make-lang.in (f/g77.dvi): Replace non-working use of texi2dvi
918 with explicit use of tex.
919 (f77.mostlyclean): Remove TeX index files.
921 * g77install.texi (Prerequisites): Kluge round TeX lossage with
922 hyphen in @value in @code.
924 Tue Aug 4 16:59:39 1998 Craig Burley <burley@gnu.org>
926 * com.c (ffecom_convert_narrow_, ffecom_convert_widen_):
927 Allow conversion from pointer to same-sized integer,
928 to fix invoking SIGNAL as a function.
930 1998-07-26 Dave Love <d.love@dl.ac.uk>
932 * BUGS, INSTALL, NEWS: Rebuilt.
934 Sat Jul 25 17:23:55 1998 Craig Burley <burley@gnu.org>
937 * stc.c (ffestc_R1229_start): Set info to ANY as well.
939 Tue Jul 21 04:33:37 1998 Craig Burley <burley@gnu.org>
941 * g77spec.c (lang_specific_driver): Return unmolested
942 command line when --help seen.
943 Comment out code that printed g77-specific --help info.
945 Sat Jul 18 19:16:48 1998 Craig Burley <burley@gnu.org>
947 * lang-options.h: Fix up doc strings.
948 Remove the unimplemented -fdcp-intrinsics-* options.
950 * str-1t.fin: Change mixed-case spelling of `GoTo' from
953 Thu Jul 16 13:26:36 1998 Craig Burley <burley@gnu.org>
955 * com.c (ffecom_finish_symbol_transform_): Revert change
956 of 1998-05-23, as it was too aggressive, in that it
957 prevented transformation of (used) functions before
958 primary code generation.
960 1998-07-15 Dave Love <d.love@dl.ac.uk>
962 * intdoc.texi: Regenerated.
964 Mon Jul 13 18:45:06 1998 Craig Burley <burley@gnu.org>
966 * Make-lang.in (f77.rebuilt): Fix to depend on
967 build-dir-based, not source-based, g77.info.
969 * g77.texi: Merge docs with 0.5.24.
970 * g77install.texi: Ditto.
972 Mon Jul 13 18:02:29 1998 Craig Burley <burley@gnu.org>
974 Cleanups vis-a-vis g77-0.5.24:
975 * g77spec.c (lang_specific_driver): Tabify source.
976 * top.c (ffe_decode_option): Use fixed macro to set
977 internal-checking flag.
978 * top.h (ffe_set_is_do_internal_checks): Fix macro.
980 Mon Jul 13 17:33:44 1998 Craig Burley <burley@gnu.org>
982 Cleanups vis-a-vis system.h cutover and g77-0.5.24:
983 * Makefile.in (fini.o): Define USE_HCONFIG macro
984 so source code doesn't have to.
985 * fini.c: Don't define USE_HCONFIG here, since
986 source code usually shouldn't care about this.
987 * ansify.c: Include stddef.h only if we have it.
991 Mon Jul 13 17:30:29 1998 Nick Clifton <nickc@cygnus.com>
993 * lang-options.h: Format changed to work with --help support added
996 Mon Jul 13 11:54:03 1998 Craig Burley <burley@gnu.org>
998 * com.c (ffecom_push_tempvar): Replace kludge that
999 munged back-end globals directly with proper calls
1000 to push_topmost_sequence and pop_topmost_sequence.
1002 1998-07-12 Dave Love <d.love@dl.ac.uk>
1004 * version.c: Bump version.
1006 Sat Jul 11 19:24:32 1998 Craig Burley <burley@gnu.org>
1009 * equiv.c (ffeequiv_offset_): Don't crash on various
1010 possible ANY operands.
1012 Sat Jul 11 18:24:37 1998 Craig Burley <burley@gnu.org>
1014 * com.c (ffecom_expr_) [FFEBLD_opCONTER]: Die if padding
1015 for constant is non-zero.
1017 * com.c (__eprintf): Delete this function, it is obsolete.
1019 1998-07-09 Dave Love <d.love@dl.ac.uk>
1021 * intdoc.in (HOSTNM_func, HOSTNM_subr): Update last change.
1023 Thu Jul 9 00:45:59 1998 Craig Burley <burley@gnu.org>
1025 Fix debugging of CHARACTER*(*), etc., which requires
1026 emitting debug info on types like `ftnlen':
1027 * com.c (ffecom_start_progunit_): Don't bother
1028 resetting "invented" flag for identifier.
1029 (ffecom_transform_equiv_): Don't bother zeroing
1030 "ignored" flag for decl.
1031 (pushdecl): No longer set "ignored", "used", or
1032 "suppressed debug" flags for decls having "invented"
1035 1998-07-06 Mike Stump <mrs@wrs.com>
1037 * Make-lang.in (f77.stage?): Use mv -f instead of just mv so that
1040 1998-07-06 Dave Love <d.love@dl.ac.uk>
1042 * intdoc.in (HOSTNM_func, HOSTNM_subr): Note possible need for
1045 1998-07-05 Dave Love <d.love@dl.ac.uk>
1047 * intdoc.in: Add entry for DATE_AND_TIME.
1049 * intrin.def: Add implementation for DATE_AND_TIME. Make second
1050 and third args of SYSTEM_CLOCK optional.
1052 * com.c (ffecom_expr_intrinsic_): New case for DATE_AND_TIME.
1054 * com-rt.def (FFECOM_gfrtSYSTEM_CLOCK): Call G77_system_clock_0,
1056 (FFECOM_gfrtDATE_AND_TIME): New DEFGFRT.
1058 Wed Jul 1 11:19:13 1998 Craig Burley <burley@gnu.org>
1060 Fix 980701-1.f (which was producing "unaligned trap"
1061 on an Alpha running GNU/Linux, as predicted):
1062 * equiv.c (ffeequiv_layout_local_): Don't bother
1063 coping with pre-padding of entire area while building
1064 it; do that instead after the building is done, and
1065 do it by modifying only the modulo field. This covers
1066 the case of alignment stringency being increased without
1067 lowering the starting offset, unlike the previous changes,
1068 and even more elegantly than those.
1070 * target.c (ffetarget_align): Make sure alignments
1071 are non-zero, just in case.
1073 See ChangeLog.0 for earlier changes.
1076 add-log-time-format: current-time-string