]>
Commit | Line | Data |
---|---|---|
fa0848d5 CB |
1 | 1999-02-20 Craig Burley <craig@jcb-sc.com> |
2 | ||
3 | * g77.texi: Properly attribute Priest document; clarify | |
4 | that it is in the .ps version of the Goldberg document. | |
5 | ||
cea0198e CB |
6 | 1999-02-19 Craig Burley <craig@jcb-sc.com> |
7 | ||
8 | * bugs0.texi, bugs.texi, install0.texi, g77install.texi, | |
9 | news0.texi, news.texi: Update copyright dates. | |
10 | Clarify which files are source, which are derived, | |
11 | and remind maintainers where copyright dates are sourced. | |
12 | * BUGS, INSTALL, NEWS: Regenerated. | |
13 | ||
19d987e2 CB |
14 | 1999-02-19 Craig Burley <craig@jcb-sc.com> |
15 | ||
16 | * global.c (ffeglobal_ref_progunit_): Warn about a function | |
17 | definition that disagrees with the type of a previous reference. | |
18 | Improve commentary. Fix a couple of minor bugs. Clean up | |
19 | some code. | |
20 | * news.texi: Spread the joy. | |
21 | ||
5d0e7057 CB |
22 | 1999-02-18 Craig Burley <craig@jcb-sc.com> |
23 | ||
24 | * expr.c (ffeexpr_finished_): Disallow non-default INTEGER | |
25 | as argument for FILEINT and FILEASSOC as lhs. | |
26 | * news.texi: Document fix. | |
27 | * version.c: Bump. | |
28 | ||
c89524a8 CB |
29 | 1999-02-18 Craig Burley <craig@jcb-sc.com> |
30 | ||
31 | * g77.texi: Clarify -fno-globals vs. -Wno-globals. | |
32 | ||
c718be04 CB |
33 | 1999-02-18 Craig Burley <craig@jcb-sc.com> |
34 | ||
35 | * intdoc.in (LOG10): Fix typo. | |
36 | ||
ef35f382 UD |
37 | 1999-02-17 Ulrich Drepper <drepper@cygnus.com> |
38 | ||
39 | * intdoc.in: Fix typo. | |
40 | ||
d79904b8 CB |
41 | 1999-02-17 Craig Burley <craig@jcb-sc.com> |
42 | ||
43 | * g77.texi, intdoc.in: Document Y2K and some other known | |
44 | limitations. | |
45 | * intrin.def (DTIME, FDATE): Fix capitalization of | |
46 | case-sensitive forms of these intrinsics' names. | |
47 | ||
95ac945d DL |
48 | 1999-02-17 Dave Love <fx@gnu.org> |
49 | ||
50 | * intdoc.in: Say `common' logarithm for log10. | |
51 | ||
e84aaeeb UD |
52 | 1999-02-16 Ulrich Drepper <drepper@cygnus.com> |
53 | ||
54 | * g77.texi: Add missing @ in email addresses. | |
55 | ||
25d7717e CB |
56 | 1999-02-15 Craig Burley <craig@jcb-sc.com> |
57 | ||
58 | * *.*: Delete my (old) email address in most places, change it | |
59 | in a few. | |
60 | ||
60d19ba0 CB |
61 | 1999-02-14 Craig Burley <craig@jcb-sc.com> |
62 | ||
63 | * version.c: Bump. | |
64 | ||
3b959d08 CB |
65 | 1999-02-14 Craig Burley <craig@jcb-sc.com> |
66 | ||
67 | * version.c: Bump for 1998-10-02 change (forgot to do this | |
68 | before). | |
69 | ||
d1d80a92 CB |
70 | 1999-02-14 Craig Burley <craig@jcb-sc.com> |
71 | ||
72 | * lang-specs.h, g77.1, g77.texi, news.texi: Recognize `.FOR' | |
73 | and `.FPP' as well as `.for' and `.fpp'. | |
74 | ||
2bf8f6bc CB |
75 | 1999-02-14 Craig Burley <craig@jcb-sc.com> |
76 | ||
77 | * intdoc.in (LOG10): Fix description. | |
78 | ||
90b8e60a CB |
79 | 1999-02-14 Craig Burley <craig@jcb-sc.com> |
80 | ||
81 | * news.texi: Mention fix for SIGNAL invocation circa egcs-1.1. | |
82 | ||
995399e2 CB |
83 | 1999-02-14 Craig Burley <craig@jcb-sc.com> |
84 | ||
85 | * g77.texi, g77install.texi, bugs.texi, g77install.texi: Clean | |
86 | up and improve indexing, and some other areas of docs. | |
87 | ||
88 | 1999-02-14 Craig Burley <craig@jcb-sc.com> | |
89 | ||
90 | * intdoc.in (MCLOCK8, TIME8): Warn about lower range on | |
91 | 32-bit systems. | |
92 | ||
5b2c2c94 JL |
93 | Sat Feb 6 18:02:17 1999 Jeffrey A Law (law@cygnus.com) |
94 | ||
95 | * g77.texi: Update email addresses. | |
96 | ||
d5787553 ME |
97 | Wed Feb 3 22:50:17 1999 Marc Espie <Marc.Espie@liafa.jussieu.fr> |
98 | ||
99 | * Make-lang.in (g77$(exeext)): Get choose-temp.o, pexecute.o and | |
100 | mkstemp.o from libiberty. | |
101 | ||
1328d92f ZW |
102 | 1999-02-01 Zack Weinberg <zack@rabi.columbia.edu> |
103 | ||
104 | * top.c: Don't define ffe_is_ident_. Don't process | |
105 | -f(no-)ident here. | |
106 | * top.h: Remove declaration of ffe_is_ident_ and macros | |
107 | ffe_is_ident() and ffe_set_is_ident(). | |
108 | * lex.c: Use flag_no_ident instead of ffe_is_ident(). | |
109 | ||
3bfb5aec ZW |
110 | Sun Jan 31 20:34:29 1999 Zack Weinberg <zack@rabi.columbia.edu> |
111 | ||
112 | * lang-specs.h: Map -Qn to -fno-ident. | |
113 | ||
f9a95c4b KG |
114 | Tue Jan 5 22:12:41 1999 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
115 | ||
116 | * Make-lang.in (g77.o): Depend on prefix.h. | |
117 | ||
a74d78dd KG |
118 | Fri Nov 27 13:10:32 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
119 | ||
120 | * fini.c: Rename variable `spaces' to `xspaces' to avoid | |
121 | conflicting with function `spaces' from libiberty. | |
122 | ||
123 | * g77spec.c: Don't prototype libiberty functions. | |
124 | * malloc.c: Likewise. | |
125 | ||
58dd1c34 DL |
126 | 1998-11-20 Dave Love <d.love@dl.ac.uk> |
127 | ||
128 | * g77.texi: Assorted minor changes. | |
129 | ||
a515a901 DL |
130 | 1998-11-19 Dave Love <d.love@dl.ac.uk> |
131 | ||
3cf74127 DL |
132 | * bugs.texi: Formatting changes from Craig. |
133 | ||
a515a901 DL |
134 | * intdoc.in: Terminate some @xrefs with `,'. |
135 | ||
a76b6b40 MH |
136 | 1998-11-19 Manfred Hollstein <manfred@s-direktnet.de> |
137 | ||
138 | * Make-lang.in (mandir): Replace all uses of $(mandir) by $(man1dir). | |
139 | ||
36ded32a JL |
140 | Mon Nov 9 23:15:39 1998 Jeffrey A Law (law@cygnus.com) |
141 | ||
142 | * g77.texi, news.texi: Updates from Craig. | |
143 | ||
78651e7a KG |
144 | Sun Nov 8 17:47:56 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
145 | ||
146 | * Makefile.in (INCLUDES): Add "-I$(srcdir)/../../include". | |
147 | ||
8c5f7dc5 KG |
148 | Sat Nov 7 15:58:54 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
149 | ||
150 | * g77spec.c: Don't include gansidecl.h. | |
151 | * output.j: Likewise. | |
152 | ||
1eb1d2a3 DL |
153 | 1998-11-04 Dave Love <d.love@dl.ac.uk> |
154 | ||
155 | * g77.texi: Small formatting/indexing fixes. | |
156 | ||
0816ebdd KG |
157 | Mon Oct 12 20:41:59 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
158 | ||
159 | * bad.c (ffebad_finish): Change type of variable `c' to unsigned | |
160 | char, change type of variable `s' to unsigned char *. | |
161 | ||
162 | * com.c (ffecom_symbol_null_): Add missing initializers. | |
163 | ||
164 | * fini.c (MAXNAMELEN): Undef it before defining. | |
165 | ||
166 | * implic.c (ffeimplic_lookup_): Change type of parameter `c' to | |
167 | unsigned char. | |
168 | ||
169 | * intrin.c (ffeintrin_init_0): Cast the argument of ctype macros | |
170 | to (unsigned char). | |
171 | ||
172 | * lex.c (ffelex_splice_tokens): Change type of variable `p' to | |
173 | unsigned char *. | |
174 | (ffelex_token_name_from_names): Cast the argument of | |
175 | `ffelex_is_firstnamechar' to (unsigned char). | |
176 | (ffelex_token_names_from_names): Likewise. | |
177 | (ffelex_token_new_name): Likewise. | |
178 | (ffelex_token_new_names): Likewise. | |
179 | ||
180 | * malloc.c (malloc_root_): Add missing initializer. | |
181 | ||
182 | * stb.c (ffestb_do): Change type of variable `p' to unsigned char *. | |
183 | (ffestb_else) Likewise. | |
184 | (ffestb_else3_) Likewise. | |
185 | (ffestb_endxyz) Likewise. | |
186 | (ffestb_goto) Likewise. | |
187 | (ffestb_let) Likewise. | |
188 | (ffestb_varlist) Likewise. | |
189 | (ffestb_R522) Likewise. | |
190 | (ffestb_R528) Likewise. | |
191 | (ffestb_R834) Likewise. | |
192 | (ffestb_R835) Likewise. | |
193 | (ffestb_R838) Likewise. | |
194 | (ffestb_R1102) Likewise. | |
195 | (ffestb_blockdata) Likewise. | |
196 | (ffestb_R1212) Likewise. | |
197 | (ffestb_R810) Likewise. | |
198 | (ffestb_R10014_): Cast the argument of `ffelex_is_firstnamechar' | |
199 | to (unsigned char). | |
200 | (ffestb_V014): Change type of variable `p' to unsigned char *. | |
201 | (ffestb_dummy) Likewise. | |
202 | (ffestb_R524) Likewise. | |
203 | (ffestb_R547) Likewise. | |
204 | (ffestb_decl_chartype) Likewise. | |
205 | (ffestb_decl_dbltype) Likewise. | |
206 | (ffestb_decl_gentype) Likewise. | |
207 | (ffestb_decl_entsp_2_) Likewise. | |
208 | (ffestb_V027) Likewise. | |
209 | (ffestb_decl_R539) Likewise. | |
210 | ||
211 | * top.c (ffe_decode_option): Mark parameter `argc' with | |
212 | ATTRIBUTE_UNUSED. | |
213 | ||
214 | * where.c (ffewhere_unknown_line_): Add missing initializers. | |
215 | ||
ca672a55 DL |
216 | 1998-10-02 Dave Love <d.love@dl.ac.uk> |
217 | ||
218 | * com.c (ffecom_expr_intrinsic_): Fix return type for RAND. | |
219 | ||
a09a009c NC |
220 | Thu Oct 1 10:43:45 1998 Nick Clifton <nickc@cygnus.com> |
221 | ||
222 | * lex.c: Replace occurances of HANDLE_SYSV_PRAGMA with | |
223 | HANDLE_GENERIC_PRAGMAS. | |
224 | ||
7542d87c JL |
225 | Mon Sep 28 04:22:00 1998 Jeffrey A Law (law@cygnus.com) |
226 | ||
227 | * news.texi: Update from Craig. | |
228 | ||
c5a951a8 DL |
229 | 1998-09-23 Dave Love <d.love@dl.ac.uk> |
230 | ||
231 | * g77.texi: Additions about `/*', trailing comments and cpp. | |
232 | ||
6f433471 DL |
233 | 1998-09-18 Dave Love <d.love@dl.ac.uk> |
234 | ||
235 | * g77.texi: Various additions and some small fixes. | |
236 | ||
8d1fb677 KI |
237 | Thu Sep 10 14:55:44 1998 Kamil Iskra <iskra@student.uci.agh.edu.pl> |
238 | ||
239 | * Make-lang.in (f77.install-common): Add missing "else true;". | |
240 | ||
df3be384 DL |
241 | 1998-09-07 Dave Love <d.love@dl.ac.uk> |
242 | ||
243 | * ChangeLog.egcs: Deleted. Entries merged here. | |
244 | ||
1c98b8e7 DL |
245 | 1998-09-05 Dave Love <d.love@dl.ac.uk> |
246 | ||
247 | * Makefile.in (LDFLAGS): Set from BOOT_LDFLAGS. | |
248 | (F771_LDFLAGS): Variable dispensed with. | |
249 | ||
fd384dc9 CB |
250 | Fri Sep 4 19:53:34 1998 Craig Burley <burley@gnu.org> |
251 | ||
252 | * intdoc.in: Minor editorial tweaks. | |
253 | ||
eacd66f4 CB |
254 | Fri Sep 4 18:35:52 1998 Craig Burley <burley@gnu.org> |
255 | ||
256 | * lang-options.h: Convert to wrap option and doc string | |
257 | in a new macro invocation, FTNOPT, so the nearly identical | |
258 | list can be used in FSF-g77. | |
259 | ||
9041884c CB |
260 | Fri Sep 4 18:35:52 1998 Craig Burley <burley@gnu.org> |
261 | ||
262 | * Makefile.in (fini.o): Don't define USE_HCONFIG here. | |
263 | * fini.c: Define USE_HCONFIG here instead, so deps-kinda | |
264 | picks up correct dependency. | |
265 | ||
266 | * Makefile.in (proj-h.o): Fix dependencies list. | |
267 | ||
ae4d12ca NC |
268 | Wed Sep 02 09:25:29 1998 Nick Clifton <nickc@cygnus.com> |
269 | ||
270 | * lex.c (ffe_lex_hash): Change how HANDLE_PRAGMA and | |
271 | HANDLE_SYSV_PRAGMA would be called if they pragma parsing was | |
272 | enabled in this code. | |
273 | Generate warning messages if unknown pragmas are encountered. | |
274 | (pragma_getc): New function: retrieves characters from the | |
275 | input stream. Defined when HANDLE_PRAGMA is defined. | |
276 | (pragma_ungetc): New function: replaces characters back into the | |
277 | input stream. Defined when HANDLE_PRAGMA is defined. | |
278 | ||
b51e57aa CB |
279 | Tue Sep 1 10:00:21 1998 Craig Burley <burley@gnu.org> |
280 | ||
281 | * bugs.texi, g77.1, g77.texi, intdoc.in, news.texi: Doc updates | |
282 | from Craig. | |
283 | ||
62fa841b DL |
284 | 1998-08-23 Dave Love <d.love@dl.ac.uk> |
285 | ||
286 | * g77.texi: Increment `version-g77' and fix a few typos. | |
287 | ||
df3be384 DL |
288 | Tue Aug 18 21:41:31 1998 Jeffrey A Law (law@cygnus.com) |
289 | ||
290 | * Make-lang.in: Add several "else true" clauses to deal with lame | |
291 | systems. | |
292 | ||
4a46dbe8 L |
293 | Tue Aug 11 08:12:14 1998 H.J. Lu (hjl@gnu.org) |
294 | ||
295 | * Make-lang.in (g77.o): Touch lang-f77 before checking it. | |
296 | ||
b86c2124 DL |
297 | 1998-08-09 Dave Love <d.love@dl.ac.uk> |
298 | ||
299 | * Make-lang.in (f/g77.dvi): Replace non-working use of texi2dvi | |
300 | with explicit use of tex. | |
301 | (f77.mostlyclean): Remove TeX index files. | |
302 | ||
303 | * g77install.texi (Prerequisites): Kluge round TeX lossage with | |
304 | hyphen in @value in @code. | |
305 | ||
a74de6ea CB |
306 | Tue Aug 4 16:59:39 1998 Craig Burley <burley@gnu.org> |
307 | ||
308 | * com.c (ffecom_convert_narrow_, ffecom_convert_widen_): | |
309 | Allow conversion from pointer to same-sized integer, | |
310 | to fix invoking SIGNAL as a function. | |
311 | ||
a30ab391 DL |
312 | 1998-07-26 Dave Love <d.love@dl.ac.uk> |
313 | ||
314 | * BUGS, INSTALL, NEWS: Rebuilt. | |
315 | ||
99b712ff CB |
316 | Sat Jul 25 17:23:55 1998 Craig Burley <burley@gnu.org> |
317 | ||
318 | Fix 980615-0.f: | |
319 | * stc.c (ffestc_R1229_start): Set info to ANY as well. | |
320 | ||
90059ae1 CB |
321 | Tue Jul 21 04:33:37 1998 Craig Burley <burley@gnu.org> |
322 | ||
323 | * g77spec.c (lang_specific_driver): Return unmolested | |
324 | command line when --help seen. | |
325 | Comment out code that printed g77-specific --help info. | |
326 | ||
530f7010 CB |
327 | Sat Jul 18 19:16:48 1998 Craig Burley <burley@gnu.org> |
328 | ||
329 | * lang-options.h: Fix up doc strings. | |
330 | Remove the unimplemented -fdcp-intrinsics-* options. | |
331 | ||
332 | * str-1t.fin: Change mixed-case spelling of `GoTo' from | |
333 | `Goto'. | |
334 | ||
75750f9c CB |
335 | Thu Jul 16 13:26:36 1998 Craig Burley <burley@gnu.org> |
336 | ||
df3be384 | 337 | * com.c (ffecom_finish_symbol_transform_): Revert change |
75750f9c CB |
338 | of 1998-05-23, as it was too aggressive, in that it |
339 | prevented transformation of (used) functions before | |
340 | primary code generation. | |
341 | ||
a1d80b3e DL |
342 | 1998-07-15 Dave Love <d.love@dl.ac.uk> |
343 | ||
344 | * intdoc.texi: Regenerated. | |
345 | ||
9a59ff4f CB |
346 | Mon Jul 13 18:45:06 1998 Craig Burley <burley@gnu.org> |
347 | ||
348 | * Make-lang.in (f77.rebuilt): Fix to depend on | |
349 | build-dir-based, not source-based, g77.info. | |
350 | ||
351 | * g77.texi: Merge docs with 0.5.24. | |
352 | * g77install.texi: Ditto. | |
353 | ||
4801aa8f CB |
354 | Mon Jul 13 18:02:29 1998 Craig Burley <burley@gnu.org> |
355 | ||
356 | Cleanups vis-a-vis g77-0.5.24: | |
357 | * g77spec.c (lang_specific_driver): Tabify source. | |
358 | * top.c (ffe_decode_option): Use fixed macro to set | |
359 | internal-checking flag. | |
360 | * top.h (ffe_set_is_do_internal_checks): Fix macro. | |
361 | ||
207ff633 CB |
362 | Mon Jul 13 17:33:44 1998 Craig Burley <burley@gnu.org> |
363 | ||
364 | Cleanups vis-a-vis system.h cutover and g77-0.5.24: | |
365 | * Makefile.in (fini.o): Define USE_HCONFIG macro | |
366 | so source code doesn't have to. | |
367 | * fini.c: Don't define USE_HCONFIG here, since | |
368 | source code usually shouldn't care about this. | |
369 | * ansify.c: Include stddef.h only if we have it. | |
370 | * intdoc.c: Ditto. | |
371 | * proj.h: Ditto. | |
372 | ||
30e5b40b NC |
373 | Mon Jul 13 17:30:29 1998 Nick Clifton <nickc@cygnus.com> |
374 | ||
375 | * lang-options.h: Format changed to work with --help support added | |
376 | to gcc/toplev.c | |
377 | ||
6bf71635 CB |
378 | Mon Jul 13 11:54:03 1998 Craig Burley <burley@gnu.org> |
379 | ||
380 | * com.c (ffecom_push_tempvar): Replace kludge that | |
381 | munged back-end globals directly with proper calls | |
382 | to push_topmost_sequence and pop_topmost_sequence. | |
383 | ||
e3fc7b68 DL |
384 | 1998-07-12 Dave Love <d.love@dl.ac.uk> |
385 | ||
386 | * version.c: Bump version. | |
387 | ||
4fe911f5 CB |
388 | Sat Jul 11 19:24:32 1998 Craig Burley <burley@gnu.org> |
389 | ||
390 | Fix 980616-0.f: | |
391 | * equiv.c (ffeequiv_offset_): Don't crash on various | |
392 | possible ANY operands. | |
393 | ||
c264f113 CB |
394 | Sat Jul 11 18:24:37 1998 Craig Burley <burley@gnu.org> |
395 | ||
396 | * com.c (ffecom_expr_) [FFEBLD_opCONTER]: Die if padding | |
397 | for constant is non-zero. | |
398 | ||
399 | * com.c (__eprintf): Delete this function, it is obsolete. | |
400 | ||
1cd97bb3 DL |
401 | 1998-07-09 Dave Love <d.love@dl.ac.uk> |
402 | ||
403 | * intdoc.in (HOSTNM_func, HOSTNM_subr): Update last change. | |
404 | ||
621bb5b1 CB |
405 | Thu Jul 9 00:45:59 1998 Craig Burley <burley@gnu.org> |
406 | ||
407 | Fix debugging of CHARACTER*(*), etc., which requires | |
408 | emitting debug info on types like `ftnlen': | |
409 | * com.c (ffecom_start_progunit_): Don't bother | |
410 | resetting "invented" flag for identifier. | |
411 | (ffecom_transform_equiv_): Don't bother zeroing | |
412 | "ignored" flag for decl. | |
413 | (pushdecl): No longer set "ignored", "used", or | |
414 | "suppressed debug" flags for decls having "invented" | |
415 | identifiers. | |
416 | ||
2cc6777c DL |
417 | 1998-07-06 Mike Stump <mrs@wrs.com> |
418 | ||
419 | * Make-lang.in (f77.stage?): Use mv -f instead of just mv so that | |
420 | we can move g77.c. | |
421 | ||
60afa297 DL |
422 | 1998-07-06 Dave Love <d.love@dl.ac.uk> |
423 | ||
424 | * intdoc.in (HOSTNM_func, HOSTNM_subr): Note possible need for | |
425 | -lsocket. | |
426 | ||
9e8e701d DL |
427 | 1998-07-05 Dave Love <d.love@dl.ac.uk> |
428 | ||
429 | * intdoc.in: Add entry for DATE_AND_TIME. | |
430 | ||
431 | * intrin.def: Add implementation for DATE_AND_TIME. Make second | |
432 | and third args of SYSTEM_CLOCK optional. | |
433 | ||
434 | * com.c (ffecom_expr_intrinsic_): New case for DATE_AND_TIME. | |
435 | ||
436 | * com-rt.def (FFECOM_gfrtSYSTEM_CLOCK): Call G77_system_clock_0, | |
437 | not system_clock_. | |
438 | (FFECOM_gfrtDATE_AND_TIME): New DEFGFRT. | |
439 | ||
f781186f CB |
440 | Wed Jul 1 11:19:13 1998 Craig Burley <burley@gnu.org> |
441 | ||
442 | Fix 980701-1.f (which was producing "unaligned trap" | |
443 | on an Alpha running GNU/Linux, as predicted): | |
444 | * equiv.c (ffeequiv_layout_local_): Don't bother | |
445 | coping with pre-padding of entire area while building | |
446 | it; do that instead after the building is done, and | |
447 | do it by modifying only the modulo field. This covers | |
448 | the case of alignment stringency being increased without | |
449 | lowering the starting offset, unlike the previous changes, | |
450 | and even more elegantly than those. | |
451 | ||
452 | * target.c (ffetarget_align): Make sure alignments | |
453 | are non-zero, just in case. | |
454 | ||
a6fa6420 CB |
455 | Mon Jun 29 09:47:33 1998 Craig Burley <burley@gnu.org> |
456 | ||
457 | Fix 980628-*.f: | |
458 | * bld.h: New `pad' field and accessor macros for | |
459 | ACCTER, ARRTER, and CONTER ops. | |
460 | * bld.c (ffebld_new_accter, ffebld_new_arrter, | |
461 | ffebld_new_conter_with_orig): Initialize `pad' field | |
462 | to zero. | |
463 | * com.c (ffecom_transform_common_): Include initial | |
464 | padding (aka modulo aka offset) in size calculation. | |
465 | Copy initial padding value into FFE initialization expression | |
466 | so the GBE transformation of that expression includes it. | |
467 | Make array low bound 0 instead of 1, for consistency. | |
468 | (ffecom_transform_equiv_): Include initial | |
469 | padding (aka modulo aka offset) in size calculation. | |
470 | Copy initial padding value into FFE initialization expression | |
471 | so the GBE transformation of that expression includes it. | |
472 | Make array low bound 0 instead of 1, for consistency. | |
473 | (ffecom_expr_, case FFEBLD_opACCTER): Delete unused `size' | |
474 | variable. | |
475 | Track destination offset separately, allowing for | |
476 | initial padding. | |
477 | Don't bother setting initial PURPOSE offset if zero. | |
478 | Include initial padding in size calculation. | |
479 | (ffecom_expr_, case FFEBLD_opARRTER): Allow for | |
480 | initial padding. | |
481 | Include initial padding in size calculation. | |
482 | Make array low bound 0 instead of 1, for consistency. | |
483 | (ffecom_finish_global_): Make array low bound 0 instead | |
484 | of 1, for consistency. | |
485 | (ffecom_notify_init_storage): Copy `pad' field from old | |
486 | ACCTER to new ARRTER. | |
487 | (ffecom_notify_init_symbol): Ditto. | |
488 | * data.c (ffedata_gather_): Initialize `pad' field in new | |
489 | ARRTER to 0. | |
490 | (ffedata_value_): Ditto. | |
491 | * equiv.c (ffeequiv_layout_local_): When lowering start | |
492 | of equiv area, extend lowering to maintain needed alignment. | |
493 | * target.c (ffetarget_align): Handle negative offset correctly. | |
494 | ||
495 | * global.c (ffeglobal_pad_common): Warn about non-zero | |
496 | padding only the first time its seen. | |
497 | If new padding larger than old, update old. | |
498 | (ffeglobal_save_common): Use correct type for size throughout. | |
499 | * global.h: Use correct type for size throughout. | |
500 | (ffeglobal_common_pad): New macro. | |
501 | (ffeglobal_pad): Delete this unused and broken macro. | |
502 | ||
df3be384 DL |
503 | Sat Jun 27 12:18:33 1998 Jeffrey A Law (law@cygnus.com) |
504 | ||
505 | * Make-lang.in (g77): Depend on mkstemp.o. Link in mkstemp.o. | |
e84aaeeb | 506 | |
973bd7a4 CB |
507 | Fri Jun 26 11:54:19 1998 Craig Burley <burley@gnu.org> |
508 | ||
509 | * g77spec.c (lang_specific_driver): Put `-lg2c' in | |
510 | front of any `-lm' that is seen. | |
511 | ||
df3be384 DL |
512 | Wed Jun 24 01:01:23 1998 Jeffrey A Law (law@cygnus.com) |
513 | ||
514 | * g77spec.c (lang_specific_driver): Revert last change. | |
515 | ||
2cc6777c DL |
516 | Mon Jun 22 23:12:05 1998 H.J. Lu (hjl@gnu.org) |
517 | ||
518 | * Make-lang.in (G77STAGESTUFF): Add g77.c. | |
519 | ||
df3be384 DL |
520 | Fri Jun 19 07:54:40 1998 H.J. Lu (hjl@gnu.org) |
521 | ||
522 | * g77spec.c (lang_specific_driver): Check n_infiles before | |
523 | appending args. | |
524 | ||
08e901b9 CB |
525 | Mon Jun 15 23:39:24 1998 Craig Burley <burley@gnu.org> |
526 | ||
527 | * Make-lang.in (f/g77.info): Use -f when removing | |
528 | pre-existing Info files, if any. (This rm command | |
529 | can go away once makeinfo has been changed to delete | |
530 | .info-N files beyond the last one it creates.) | |
531 | ||
532 | * Make-lang.in ($(srcdir)/f/intdoc.texi): Compile | |
533 | using $(INCLUDES) macro to get the new hconfig.h | |
2cc6777c | 534 | and system.h headers. |
fd66d5a6 | 535 | |
8b45da67 CB |
536 | Mon Jun 15 22:21:57 1998 Craig Burley <burley@gnu.org> |
537 | ||
538 | Cutover to system.h: | |
539 | * Make-lang.in: | |
540 | * Makefile.in: | |
541 | * ansify.c: | |
542 | * bad.c: | |
543 | * bld.c: | |
544 | * com.c: | |
545 | * com.h: | |
546 | * expr.c: | |
547 | * fini.c: | |
548 | * g77spec.c: | |
549 | * implic.c: | |
550 | * intdoc.c: | |
551 | * intrin.c: | |
552 | * lex.c: | |
553 | * lex.h: | |
554 | * parse.c: | |
555 | * proj.c: | |
556 | * proj.h: | |
557 | * src.c: | |
558 | * src.h: | |
559 | * stb.c: | |
560 | * ste.c: | |
561 | * target.c: | |
562 | * top.c: | |
563 | * system.j: New file. | |
564 | ||
565 | Use toplev.h where appropriate: | |
566 | * Make-lang.in: | |
567 | * Makefile.in: | |
568 | * bad.c: | |
569 | * bld.c: | |
570 | * com.c: | |
571 | * lex.c: | |
572 | * ste.c: | |
573 | * top.c: | |
574 | * toplev.j: New file. | |
e84aaeeb | 575 | |
8b45da67 CB |
576 | Conditionalize all dumping/reporting routines so they don't |
577 | get built for gcc/egcs: | |
578 | * bld.c: | |
579 | * bld.h: | |
580 | * com.c: | |
581 | * equiv.c: | |
582 | * equiv.h: | |
583 | * sta.c: | |
584 | * stt.c: | |
585 | * stt.h: | |
586 | * symbol.c: | |
587 | * symbol.h: | |
588 | ||
589 | Use hconfig.h instead of config.h where appropriate: | |
590 | * Makefile.in (proj-h.o): Compile with -DUSE_HCONFIG. | |
591 | * fini.c: Define USE_HCONFIG before including proj.h. | |
592 | ||
593 | * Makefile.in (deps-kinda): Redirect stderr to stdout, | |
594 | to eliminate diagnostics vis-a-vis g77spec.c. | |
595 | ||
596 | * Makefile.in: Regenerate dependencies via deps-kinda. | |
597 | ||
598 | * lex.c (ffelex_file_fixed, ffelex_file_free): Eliminate | |
599 | apparently spurious warnings about uninitialized variables | |
600 | `c', `column', and so on. | |
601 | ||
3f1e4292 CB |
602 | Sat Jun 13 03:13:18 1998 Craig Burley <burley@gnu.org> |
603 | ||
604 | * g77spec.c (lang_specific_driver): Print out egcs | |
605 | version info first, to be compatible with what some | |
606 | test facilities expect. | |
607 | ||
ab9e0ff9 DB |
608 | Wed Jun 10 13:17:32 1998 Dave Brolley <brolley@cygnus.com> |
609 | ||
610 | * top.h (ffe_decode_option): New argc/argv interface. | |
611 | * top.c (ffe_decode_option): New argc/argv interface. | |
612 | * parse.c (yyparse): New argc/argv interface for ffe_decode_option. | |
613 | * com.c (lang_decode_option): New argc/argv interface. | |
95a1b676 | 614 | |
df3be384 DL |
615 | Sun Jun 7 14:04:34 1998 Richard Henderson <rth@cygnus.com> |
616 | ||
617 | * com.c (lang_init_options): New function. | |
618 | * top.c (ffe_decode_option): Remove all trace of -fset-g77-defaults. | |
619 | Set ffe_is_do_internal_checks_ with -version. | |
620 | * lang-options.h: Likewise. | |
621 | * lang-specs.h: Likewise. | |
622 | ||
623 | Fri Jun 5 15:53:17 1998 Per Bothner <bothner@cygnus.com> | |
624 | ||
625 | * g77spec.c (lang_specific_pre_link, lang_specific_extra_ofiles): | |
626 | Define - update needed by gcc.c change. | |
627 | ||
a835e351 CB |
628 | Mon Jun 1 19:37:42 1998 Craig Burley <burley@gnu.org> |
629 | ||
630 | * com.c (ffecom_init_0): Fix setup of INTEGER(KIND=7) | |
631 | pointer type. | |
632 | * info.c (ffeinfo_type): Don't crash on null type. | |
633 | * expr.c (ffeexpr_fulfill_call_): Don't special-case | |
634 | %LOC(expr) or LOC(expr). | |
635 | Delete FFEGLOBAL_argsummaryPTR. | |
636 | * global.c, global.h: Delete FFEGLOBAL_argsummaryPTR. | |
637 | ||
95a1b676 CB |
638 | Thu May 28 21:32:18 1998 Craig Burley <burley@gnu.org> |
639 | ||
640 | Restore circa-0.5.22 capabilities of `g77' driver: | |
641 | * Make-lang.in (g77spec.o): Depend on f/version.h. | |
642 | (g77version.o): New rule to compile g77 version info. | |
643 | (g77$(exeext)): Depend on and link in g77version.o. | |
644 | * g77spec.c: Rewrite to be more like 0.5.22 version | |
645 | of g77.c, making filtering of command line smarter | |
646 | so mixed Fortran and C (etc.) can be compiled, verbose | |
647 | version info can be obtained, etc. | |
648 | * lang-specs.h (f77-version): New "language" to support | |
649 | "g77 -v" command under new gcc 2.8 regime. | |
650 | * lex.c (ffelex_file_fixed): If -fnull-version, just | |
651 | substitute a "source file" that prints out version info. | |
652 | * top.c, top.h: Support -fnull-version. | |
653 | ||
654 | * lang-specs.h: Use "%O" instead of OO macro to specify | |
655 | object extension. Remove old stringizing cruft. | |
656 | ||
657 | * Make-lang.in (g77.c, g77spec.o, g77.o, g77$(exeext), | |
658 | g77-cross$(exeext), f771, | |
659 | $(srcdir)/f/g77.info, $(srcdir)/f/g77.dvi, | |
660 | $(srcdir)/f/intdoc.texi, | |
661 | f77.install-common, f77.install-info, f77.install-man, | |
662 | f77.uninstall, $(G77STAGESTUFF), f77.stage1, f77.stage2, | |
663 | f77.stage3, f77.stage4, f77.distdir): Don't do anything | |
664 | unless user specified "f77" or "F77" in $LANGUAGES either | |
665 | during configuration or explicitly. For convenience of | |
666 | various tests and to work around lack of the assignment | |
667 | "LANGUAGES=$(BOOT_LANGUAGES)" in the "make stage1" command | |
668 | of "make bootstrap" in gcc, use a touch file named "lang-f77" | |
669 | to communicate whether this is the case. | |
670 | ||
671 | * Make-lang.in (F77_FLAGS_TO_PASS): Delete this macro, | |
672 | replace with minimal expansion of its former self in | |
673 | each of the two instances where it was used. | |
674 | ||
675 | * Makefile.in (HOST_CC): Delete this definition. | |
676 | ||
677 | * com.c (index, rindex): Delete these declarations. | |
678 | ||
679 | * proj.h: (isascii): Delete this. | |
680 | ||
681 | * Make-lang.in (f77.install-common): Warn if `f77-install-ok' | |
682 | flag-file exists, since it no longer triggers any activity. | |
683 | ||
684 | Rename libf2c.a and f2c.h to libg2c.a and g2c.h, | |
685 | normalize and simplify g77/libg2c build process: | |
686 | * Make-lang.in: Remove all support for overwriting | |
687 | /usr/bin/f77 etc., or whatever the actual names are | |
688 | via $(prefix) and $(local_prefix). (g++ overwrites | |
689 | /usr/bin/c++, but then it's often the only C++ compiler | |
690 | on the system; f77 often exists on systems that are | |
691 | installing g77.) | |
692 | (f77.realclean): Remove obsolete target. | |
693 | (g77.c, g77$(exeext)): Minor changes to look more like g++'s | |
694 | stuff. | |
695 | (f771): Now built with srcdir=gcc/f, not srcdir=gcc, to be | |
696 | more like g++ and such. | |
697 | (f/Makefile): Removed, as g++ doesn't need this rule. | |
698 | (f77.install-common): No longer install f77, etc. | |
699 | (f77.install-man): No longer install f77.1. | |
700 | (f77.uninstall): No longer uninstall f77, f77.1, etc. | |
701 | (f77.stage1, f77.stage2, f77.stage3, f77.stage4): Do work | |
702 | only if "f77" appears in $(LANGUAGES). | |
703 | (Note: gcc's Makefile.in's bootstrap target should set | |
704 | LANGUAGES=$(BOOT_LANGUAGES) when making the stage1 target.) | |
705 | * Makefile.in: Update vis-a-vis gcc/cp/Makefile.in. | |
706 | (none): Remove. | |
707 | (g77-only): Relocate. | |
708 | (all.indirect, f771, *.o): Now assumes current directory | |
709 | is this dir (gcc/f), not the parent directory. | |
710 | (TAGS): Remove "echo 'parse.y,0' >> TAGS ;" line. | |
711 | * config-lang.in: Delete commented-out code. | |
712 | Fix stagestuff definition. Add more stuff to | |
713 | diff_excludes definition. Don't create any directories. | |
714 | Set outputs to f/Makefile, to get variable substition | |
715 | to happen (what does that really do, anyway?!). | |
716 | * g77spec.c: Rename libf2c to libg2c. | |
717 | ||
718 | * com.h: Remove all of the gcc back-end decls, | |
719 | since egcs should have all of them correct. | |
720 | ||
721 | * com.c: Include "proj.h" before anything else, | |
722 | as that's how things are supposed to work. | |
723 | * ste.c: Ditto. | |
724 | ||
725 | * bad.c: Include "flags.j" here, since some diagnostics | |
726 | check flag_pedantic_errors. | |
727 | ||
728 | * Makefile.in (f/*.o): Rebuild dependencies via | |
729 | deps-kinda. | |
730 | ||
731 | * output.j: New source file. | |
732 | * Make-lang.in (F77_SRCS): Update accordingly. | |
733 | * Makefile.in (OUTPUT_H): Ditto. | |
734 | (deps-kinda): Ditto. | |
735 | * com.c: Include "output.j" here. | |
736 | * lex.c: Ditto. | |
737 | ||
5a3321e1 CB |
738 | Mon May 25 03:34:42 1998 Craig Burley <burley@gnu.org> |
739 | ||
740 | * com.c (ffecom_expr_): Fix D**I and Z**I cases to | |
741 | not convert (DOUBLE PRECISION) D and (DOUBLE COMPLEX) Z | |
742 | to INTEGER. (This is dead code here anyway.) | |
743 | ||
6829256f CB |
744 | Sat May 23 06:32:52 1998 Craig Burley <burley@gnu.org> |
745 | ||
746 | * com.c (ffecom_finish_symbol_transform_): Don't transform | |
747 | statement (nested) functions, to avoid gcc compiling them | |
748 | and thus producing linker errors if they refer to undefined | |
a835e351 CB |
749 | external functions. But warn if they're unused and -Wunused. |
750 | * bad.def (FFEBAD_SFUNC_UNUSED): New diagnostic. | |
6829256f | 751 | |
2cc6777c DL |
752 | Wed May 20 12:12:55 1998 Craig Burley <burley@gnu.org> |
753 | ||
754 | * Version 0.5.23 released. | |
755 | ||
2e0773e8 CB |
756 | Tue May 19 14:52:41 1998 Craig Burley <burley@gnu.org> |
757 | ||
758 | * bad.def (FFEBAD_OPEN_UNSUPPORTED, FFEBAD_INQUIRE_UNSUPPORTED, | |
759 | FFEBAD_READ_UNSUPPORTED, FFEBAD_WRITE_UNSUPPORTED, | |
760 | FFEBAD_QUAD_UNSUPPORTED, FFEBAD_BLOCKDATA_STMT, | |
761 | FFEBAD_TRUNCATING_CHARACTER, FFEBAD_TRUNCATING_HOLLERITH, | |
762 | FFEBAD_TRUNCATING_NUMERIC, FFEBAD_TRUNCATING_TYPELESS, | |
763 | FFEBAD_TYPELESS_OVERFLOW): Change these from warnings | |
764 | to errors. | |
765 | ||
766 | Tue May 19 14:51:59 1998 Craig Burley <burley@gnu.org> | |
767 | ||
768 | * Make-lang.in (f77.install-info, f77.uninstall): | |
769 | Use install-info as appropriate. | |
770 | ||
771 | Tue May 19 12:56:54 1998 Craig Burley <burley@gnu.org> | |
772 | ||
773 | * com.c (ffecom_init_0): Rename xargc to f__xargc, | |
774 | in accord with same-dated change to f/runtime. | |
775 | ||
bfe12bab | 776 | Fri May 15 10:52:49 1998 Craig Burley <burley@gnu.org> |
ac549fc3 CB |
777 | |
778 | * com.c (ffecom_convert_narrow_, ffecom_convert_widen_): | |
779 | Be even more persnickety in checking for internal bugs. | |
780 | Also, if precision isn't changing, just return the expr. | |
ac549fc3 | 781 | |
bfe12bab | 782 | * expr.c (ffeexpr_token_number_): Call |
ac549fc3 CB |
783 | ffeexpr_make_float_const_ to make an integer. |
784 | (ffeexpr_make_float_const_): Handle making an integer. | |
785 | ||
786 | * intrin.c (ffeintrin_init_0): Distinguish between | |
787 | crashes on bad arg base and kind types. | |
788 | ||
df3be384 DL |
789 | Fri May 15 01:44:22 1998 Mumit Khan <khan@xraylith.wisc.edu> |
790 | ||
791 | * Make-lang.in (f77.mostlyclean): Add missing exeext. | |
792 | ||
bfe12bab CB |
793 | Thu May 14 13:30:59 1998 Craig Burley <burley@gnu.org> |
794 | ||
795 | * Make-lang.in (f/expr.c): Now depends on f/stamp-str. | |
796 | * expr.c: Use ffestrOther in place of ffeexprDotdot_. | |
ac549fc3 CB |
797 | * str-ot.fin: Add more keywords for expr.c. |
798 | ||
799 | * intdoc.c (dumpimp): Trivial fix. | |
800 | ||
bfe12bab | 801 | * com.c (ffecom_expr_): Add ltkt variable for clarity. |
ac549fc3 | 802 | |
5a3321e1 CB |
803 | Wed May 13 13:05:34 1998 Craig Burley <burley@gnu.org> |
804 | ||
805 | * Make-lang.in (G77STAGESTUFF): Add g77.o, g77spec.o, | |
806 | and g77version.o. | |
807 | (f77.clean): Add removal of g77.c, g77.o, g77spec.o, | |
808 | and g77version.o. | |
809 | (f77.distclean): Delete removal of g77.c. | |
810 | ||
2cc6777c DL |
811 | Thu Apr 30 18:59:43 1998 Jim Wilson <wilson@cygnus.com> |
812 | ||
813 | * Make-lang.in (g77.info, g77.dvi, BUGS, INSTALL, NEWS): Put -o | |
814 | option before input file. | |
815 | ||
f8676b5d CB |
816 | Tue Apr 28 09:23:10 1998 Craig Burley <burley@gnu.org> |
817 | ||
818 | Fix 980427-0.f: | |
819 | * global.c (ffeglobal_ref_progunit_): When transitioning | |
820 | from EXT to FUNC, discard hook, since the decl, if any, is | |
821 | probably wrong. | |
822 | ||
945beb7c CB |
823 | Sun Apr 26 09:05:50 1998 Craig Burley <burley@gnu.org> |
824 | ||
825 | * com.c (ffecom_char_enhance_arg_): Wrap the upper bound | |
826 | (the PARM_DECL specifying the length of the CHARACTER*(*) | |
827 | dummy arg) in a variable_size invocation, to prevent | |
828 | dwarf2out.c crashing when compiling code with -g. | |
829 | ||
df3be384 DL |
830 | Sat Apr 18 15:26:57 1998 Jim Wilson <wilson@cygnus.com> |
831 | ||
832 | * g77spec.c (lang_specific_driver): New argument in_added_libraries. | |
833 | New local added_libraries. Increment count when add library to | |
834 | arglist. | |
835 | ||
945beb7c CB |
836 | Sat Apr 18 05:03:21 1998 Craig Burley <burley@gnu.org> |
837 | ||
838 | * com.c (ffecom_check_size_overflow_): Ignore overflow | |
839 | as well if dummy argument. | |
840 | ||
4a26588b CB |
841 | Fri Apr 17 17:18:04 1998 Craig Burley <burley@gnu.org> |
842 | ||
843 | * version.h: Get rid of the overly large headers | |
844 | here too, as done in version.c. | |
845 | ||
df3be384 DL |
846 | Tue Apr 14 15:51:37 1998 Dave Brolley <brolley@cygnus.com> |
847 | ||
848 | * com.c (init_parse): Now returns char* containing filename; | |
849 | ||
3cf0cea4 CB |
850 | Tue Apr 14 14:40:40 1998 Craig Burley <burley@gnu.org> |
851 | ||
852 | * com.c (ffecom_start_progunit_): Mark function decl | |
853 | as used, to avoid spurious warning (-Wunused) for ENTRY. | |
854 | ||
855 | Tue Apr 14 14:19:34 1998 Craig Burley <burley@gnu.org> | |
856 | ||
857 | * sta.c (ffesta_second_): Check for CASE DEFAULT | |
858 | as well as CASE, or it won't be recognized. | |
859 | ||
df3be384 DL |
860 | Thu Apr 9 00:18:44 1998 Dave Brolley (brolley@cygnus.com) |
861 | ||
862 | * com.c (finput): New variable. | |
863 | (init_parse): Handle !USE_CPPLIB. | |
864 | (finish_parse): New function. | |
865 | (lang_init): No longer declare finput. | |
866 | ||
867 | Sat Apr 4 17:45:01 1998 Richard Henderson <rth@cygnus.com> | |
868 | ||
869 | * com.c (ffecom_expr_): Revert Oct 22 change. Instead take a WIDENP | |
870 | argument so that we can respect the signedness of the original type. | |
871 | (ffecom_init_0): Do sizetype initialization first. | |
872 | ||
873 | 1998-03-28 Dave Love <d.love@dl.ac.uk> | |
874 | ||
875 | * Make-lang.in (f771$(exeext)): Fix typo. | |
876 | ||
877 | 1998-03-24 Martin von Loewis <loewis@informatik.hu-berlin.de> | |
878 | ||
879 | * com.c (lang_print_xnode): New function. | |
880 | ||
bfe12bab CB |
881 | Mon Mar 23 21:20:35 1998 Craig Burley <burley@gnu.org> |
882 | ||
883 | * version.c: Reduce to a one-line file, like | |
884 | gcc's version.c, since there's really no content | |
885 | there. | |
886 | ||
f861f674 CB |
887 | Mon Mar 23 11:58:43 1998 Craig Burley <burley@gnu.org> |
888 | ||
667332c2 CB |
889 | * bugs.texi: Various updates. |
890 | ||
f861f674 CB |
891 | * com.c (ffecom_tree_canonize_ptr_): Fix up spacing a bit. |
892 | ||
df3be384 DL |
893 | Sun Mar 22 00:50:42 1998 Nick Clifton <nickc@cygnus.com> |
894 | Geoff Noer <noer@cygnus.com> | |
895 | ||
896 | * Makefile.in: Various fixes for building cygwin32 native toolchains. | |
897 | * Make-lang.in: Likewise. | |
898 | ||
14a378ec CB |
899 | Mon Mar 16 21:20:35 1998 Craig Burley <burley@gnu.org> |
900 | ||
901 | * expr.c (ffeexpr_sym_impdoitem_): Don't blindly | |
902 | reset symbol info after calling ffesymbol_error, | |
903 | to avoid crash. | |
904 | ||
44d2eabc JL |
905 | Mon Mar 16 15:38:50 1998 Craig Burley <burley@gnu.org> |
906 | ||
907 | * Version 0.5.22 released. | |
908 | ||
909 | Mon Mar 16 14:36:02 1998 Craig Burley <burley@gnu.org> | |
910 | ||
911 | Make -g work better for ENTRY: | |
912 | * com.c (ffecom_start_progunit_): Master function | |
913 | for ENTRY-laden procedure is not really invented, | |
914 | so it can be debugged. | |
915 | (ffecom_do_entry_): Push/set/pop lineno for each | |
916 | entry point. | |
917 | ||
918 | Sun Mar 15 05:48:49 1998 Craig Burley <burley@gnu.org> | |
919 | ||
920 | * intrin.def: Fix spelling of mixed-case form | |
921 | of `CPU_Time' (was `Cpu_Time'). | |
922 | ||
2cc6777c DL |
923 | Thu Mar 12 13:50:21 1998 Craig Burley <burley@gnu.org> |
924 | ||
925 | * lang-options.h: Sort all -f*-intrinsics-* options, | |
926 | for consistency with other g77 versions. | |
927 | ||
df3be384 DL |
928 | Thu Mar 12 09:39:40 1998 Manfred Hollstein <manfred@s-direktnet.de> |
929 | ||
930 | * lang-specs.h: Properly put brackets around array elements in initializer. | |
931 | ||
44d2eabc JL |
932 | 1998-03-09 Dave Love <d.love@dl.ac.uk> |
933 | ||
934 | * Make-lang.in: Set CONFIG_SITE to a non-existent file since | |
935 | /dev/null loses with bash 2.0/autoconf 2.12. Put | |
936 | F77_FLAGS_TO_PASS before CC. | |
937 | ||
938 | Sun Mar 8 16:35:34 1998 Craig Burley <burley@gnu.org> | |
939 | ||
940 | * intrin.def: Use tabs instead of blanks more | |
941 | consistently (excepting DEFGEN section for now). | |
942 | ||
df3be384 DL |
943 | Wed Mar 4 17:38:21 1998 Jeffrey A Law (law@cygnus.com) |
944 | ||
945 | * Make-lang.in: Remove more references to libf77. | |
946 | ||
947 | Tue Mar 3 10:52:35 1998 Manfred Hollstein <manfred@s-direktnet.de> | |
948 | ||
949 | * g77.texi: Use @url for citing URLs. | |
950 | ||
44d2eabc JL |
951 | Sat Feb 28 15:24:38 1998 Craig Burley <burley@gnu.org> |
952 | ||
953 | * intrin.def: Make CPU_TIME's arg generic real to be just | |
954 | like SECOND_subr. | |
955 | ||
b50fa387 CB |
956 | Fri Feb 20 12:45:53 1998 Craig Burley <burley@gnu.org> |
957 | ||
958 | * expr.c (ffeexpr_token_arguments_): Make sure | |
959 | outer exprstack isn't null. | |
960 | ||
44d2eabc | 961 | 1998-02-16 Dave Love <d.love@dl.ac.uk> |
a52ad720 | 962 | |
44d2eabc | 963 | * Makefile.in (f/fini): Don't use -W -Wall with HOST_CC. |
30286a36 | 964 | |
2cc6777c DL |
965 | Fri Feb 13 00:14:56 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
966 | ||
967 | * com.c (type_for_mode): Add explicit braces to avoid ambiguous `else'. | |
e84aaeeb | 968 | |
2cc6777c DL |
969 | * expr.c (ffeexpr_type_combine): Likewise. |
970 | (ffeexpr_reduce_): Likewise. | |
971 | (ffeexpr_declare_parenthesized_): Likewise. | |
e84aaeeb | 972 | |
2cc6777c DL |
973 | * src.c (ffesrc_strcmp_1ns2i): Likewise. |
974 | (ffesrc_strcmp_2c): Likewise. | |
975 | (ffesrc_strncmp_2c): Likewise. | |
e84aaeeb | 976 | |
2cc6777c DL |
977 | * stb.c (ffestb_halt1_): Likewise. |
978 | (ffestb_R90910_): Likewise. | |
979 | (ffestb_R9109_): Likewise. | |
980 | ||
981 | * stc.c (ffestc_R544_equiv_): Likewise. | |
e84aaeeb | 982 | |
2cc6777c DL |
983 | * std.c (ffestd_subr_copy_easy_): Likewise. |
984 | (ffestd_R1001dump_): Likewise. | |
985 | (ffestd_R1001dump_1005_1_): Likewise. | |
986 | (ffestd_R1001dump_1005_2_): Likewise. | |
987 | (ffestd_R1001dump_1005_3_): Likewise. | |
988 | (ffestd_R1001dump_1005_4_): Likewise. | |
989 | (ffestd_R1001dump_1005_5_): Likewise. | |
990 | (ffestd_R1001dump_1010_2_): Likewise. | |
e84aaeeb | 991 | |
2cc6777c | 992 | * ste.c (ffeste_R840): Likewise. |
e84aaeeb | 993 | |
2cc6777c | 994 | * sts.c (ffests_puttext): Likewise. |
e84aaeeb | 995 | |
2cc6777c | 996 | * symbol.c (ffesymbol_check_token_): Likewise. |
e84aaeeb | 997 | |
2cc6777c DL |
998 | * target.c (ffetarget_real1): Likewise. |
999 | (ffetarget_real2): Likewise. | |
e84aaeeb | 1000 | |
df3be384 DL |
1001 | Wed Feb 11 01:44:48 1998 Richard Henderson (rth@cygnus.com) |
1002 | ||
1003 | * com.c (ffecom_ptr_to_expr) [FFEBLD_opARRAYREF]: Do upper - lower | |
1004 | in the native type, so as to properly handle negative indices. | |
1005 | ||
1006 | Tue Feb 3 20:13:05 1998 Richard Henderson <rth@cygnus.com> | |
1007 | ||
1008 | * config-lang.in: Remove references to runtime/. | |
1009 | ||
1010 | Sun Feb 1 12:43:49 1998 J"orn Rennecke <amylaar@cygnus.co.uk> | |
1011 | ||
1012 | * com.c (ffecom_tree_canonize_ptr_): Place bitsizetype typed expr | |
1013 | as first agument in MULT_EXPR. | |
1014 | Use bitsize_int (0L, 0L) as zero for bitsizes. | |
1015 | (ffecom_tree_canonize_ref_): | |
1016 | Use bitsize_int (0L, 0L) as zero for bitsizes. | |
1017 | (ffecom_init_0): Use set_sizetype. | |
1018 | ||
1019 | Sun Feb 1 02:26:58 1998 Richard Henderson <rth@cygnus.com> | |
1020 | ||
1021 | * runtime directory -- moved into "libf2c" in the toplevel | |
1022 | directory. | |
1023 | * Make-lang.in: Remove all runtime related stuff. | |
1024 | ||
2cc6777c DL |
1025 | Sun Jan 25 12:32:15 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
1026 | ||
1027 | * Make-lang.in (f77.stage1): Depend on stage1-start so parallel | |
1028 | make works better. | |
1029 | * (f77.stage2): Likewise for stage2-start. | |
1030 | * (f77.stage3): Likewise for stage3-start. | |
1031 | * (f77.stage4): Likewise for stage4-start. | |
1032 | ||
df3be384 DL |
1033 | Sat Jan 17 21:28:08 1998 Pieter Nagel <pnagel@epiuse.co.za> |
1034 | ||
1035 | * Makefile.in (FLAGS_TO_PASS): Pass down gcc_include_dir and | |
1036 | local_prefix to sub-make invocations. | |
1037 | ||
1038 | Tue Jan 13 22:07:54 1998 Jeffrey A Law (law@cygnus.com) | |
1039 | ||
1040 | * lang-options.h: Add missing options. | |
1041 | ||
575094a2 CB |
1042 | Sun Jan 11 02:14:47 1998 Craig Burley <burley@gnu.org> |
1043 | ||
1044 | Support FORMAT(I<1+2>) (constant variable-FORMAT | |
1045 | expressions): | |
1046 | * bad.def (FFEBAD_FORMAT_VARIABLE): New diagnostic. | |
1047 | * std.c (ffestd_R1001rtexpr_): New function. | |
1048 | (ffestd_R1001dump_, ffestd_R1001dump_1005_1_, | |
1049 | ffestd_R1001dump_1005_2_, ffestd_R1001dump_1005_3_, | |
1050 | ffestd_R1001dump_1005_4_, ffestd_R1001dump_1005_5_, | |
1051 | ffestd_R1001dump_1010_2_, ffestd_R1001dump_1010_3_, | |
1052 | ffestd_R1001dump_1010_4_, ffestd_R1001dump_1010_5_): | |
1053 | Use new function instead of ffestd_R1001error_. | |
1054 | ||
1055 | * stb.c (ffestb_R10014_, ffestb_R10016_, ffestb_R10018_, | |
1056 | ffestb_R100110_): Restructure `for' loop for style. | |
1057 | ||
44d2eabc JL |
1058 | Fix 970626-2.f by not doing most back-end processing |
1059 | when current_function_decl is an ERROR_MARK, and by | |
1060 | making that the case when its type would be an ERROR_MARK: | |
1061 | * com.c (ffecom_start_progunit_, finish_function, | |
1062 | lang_printable_name, start_function, | |
1063 | ffecom_finish_symbol_transform_): Test for ERROR_MARK. | |
1064 | * std.c (ffestd_stmt_pass_): Don't do any downstream | |
1065 | processing if ERROR_MARK. | |
1066 | ||
1067 | * Make-lang.in (f77.install-common): Don't install, and | |
1068 | don't uninstall existing, Info files if f/g77.info | |
1069 | doesn't exit. (This is a somewhat modified version | |
1070 | of an egcs patch on 1998-01-07 12:05:51 by Bruno Haible | |
1071 | <bruno@linuix.mathematik.uni-karlsruhe.de>.) | |
1072 | ||
99ce4a11 CB |
1073 | Fri Jan 9 19:09:07 1998 Craig Burley <burley@gnu.org> |
1074 | ||
44d2eabc JL |
1075 | Fix -fpedantic combined with `F()' invocation, |
1076 | also -fugly-comma combined with `IARGC()' invocation: | |
1077 | * bad.def (FFEBAD_NULL_ARGUMENT_W): New diagnostic. | |
1078 | * expr.c (ffeexpr_finished_): Don't reject null expressions | |
1079 | in the argument-expression context -- let outer context | |
1080 | handle that. | |
1081 | (ffeexpr_token_arguments_): Warn about null expressions | |
1082 | here if -fpedantic (as appropriate). | |
1083 | Obey -fugly-comma for only external-procedure invocations. | |
99ce4a11 CB |
1084 | * intrin.c (ffeintrin_check_): No longer ignore explicit |
1085 | omitted trailing args. | |
1086 | ||
6d433196 CB |
1087 | Tue Dec 23 14:58:04 1997 Craig Burley <burley@gnu.org> |
1088 | ||
44d2eabc JL |
1089 | * intrin.c (ffeintrin_fulfill_generic): Don't generate |
1090 | FFEBAD_INTRINSIC_TYPE for CHARACTER*(*) intrinsic. | |
1091 | ||
1092 | * com.c (ffecom_gfrt_basictype): | |
1093 | (ffecom_gfrt_kindtype): | |
1094 | (ffecom_make_gfrt_): | |
1095 | (FFECOM_rttypeVOIDSTAR_): New return type `void *', for | |
1096 | the SIGNAL intrinsic. | |
1097 | * com-rt.def (FFECOM_rttypeSIGNAL): Now returns `void *'. | |
1098 | * intdoc.c: Replace `p' kind specifier with `7'. | |
1099 | * intrin.c (ffeintrin_check_, ffeintrin_init_0): Replace | |
1100 | `p' kind specifier with `7'. | |
1101 | * intrin.def (FFEINTRIN_impLOC, FFEINTRIN_impSIGNAL_func, | |
1102 | FFEINTRIN_impSIGNAL_subr): Replace `p' specifier with `7'. | |
1103 | Also, SIGNAL now returns a `void *' status, not `int'. | |
1104 | ||
86fc7a6c CB |
1105 | Improve run-time diagnostic for "PRINT '(I1', 42": |
1106 | * com.c (ffecom_char_args_x_): Renamed from ffecom_char_args_, | |
1107 | which is now a macro (to avoid lots of changes to other code) | |
1108 | with new arg, ffecom_char_args_with_null_ being another new | |
1109 | macro to call same function with different value for new arg. | |
1110 | This function now appends a null byte to opCONTER expression | |
1111 | if the new arg is TRUE. | |
1112 | (ffecom_arg_ptr_to_expr): Support NULL length pointer. | |
1113 | * ste.c (ffeste_io_cilist_): | |
1114 | (ffeste_io_icilist_): Pass NULL length ptr for | |
1115 | FORMAT expression, so null byte gets appended where | |
1116 | feasible. | |
1117 | * target.c (ffetarget_character1): | |
1118 | (ffetarget_concatenate_character1): | |
1119 | (ffetarget_substr_character1): | |
1120 | (ffetarget_convert_character1_character1): | |
1121 | (ffetarget_convert_character1_hollerith): | |
1122 | (ffetarget_convert_character1_integer4): | |
1123 | (ffetarget_convert_character1_logical4): | |
1124 | (ffetarget_convert_character1_typeless): | |
1125 | (ffetarget_hollerith): Append extra phantom null byte as | |
1126 | part of FFETARGET-NULL-BYTE kludge. | |
1127 | ||
44d2eabc JL |
1128 | * intrin.def (FFEINTRIN_impCPU_TIME): Point to |
1129 | FFECOM_gfrtSECOND as primary run-time routine. | |
6d433196 CB |
1130 | |
1131 | Mon Dec 22 12:41:07 1997 Craig Burley <burley@gnu.org> | |
1132 | ||
1133 | * intrin.c (ffeintrin_init_0): Remove duplicate | |
1134 | check for `!'. | |
1135 | ||
df3be384 DL |
1136 | Fri Dec 19 00:12:01 1997 Richard Henderson <rth@cygnus.com> |
1137 | ||
1138 | * com.c (ffecom_sym_transform_): Assumed arrays have no upper bound. | |
1139 | ||
1140 | Mon Dec 15 17:35:35 1997 Richard Henderson <rth@cygnus.com> | |
1141 | ||
1142 | * com.c (ffecom_type_vardesc_): Vardesc.dims is a `ftnlen*'. | |
1143 | ||
6d433196 CB |
1144 | Sun Dec 14 02:49:58 1997 Craig Burley <burley@gnu.org> |
1145 | ||
1146 | * intrin.c (ffeintrin_init_0): Fix up indentation a bit. | |
1147 | Fix bug that prevented checking of arguments other | |
1148 | than the first. | |
1149 | ||
1150 | * intdoc.c: Fix up indentation a bit. | |
1151 | ||
44d2eabc JL |
1152 | Tue Dec 9 16:20:57 1997 Richard Henderson <rth@cygnus.com> |
1153 | ||
1154 | * com.c (ffecom_type_vardesc_): Vardesc.dims is a `ftnlen*'. | |
1155 | ||
df3be384 DL |
1156 | Tue Dec 2 09:57:16 1997 Jeffrey A Law (law@cygnus.com) |
1157 | ||
1158 | * Make-lang.in (f77.clean): Remove g77.c. | |
1159 | ||
6d433196 CB |
1160 | Mon Dec 1 19:12:36 1997 Craig Burley <burley@gnu.org> |
1161 | ||
1162 | * intrin.c (ffeintrin_check_): Fix up indentation a bit more. | |
1163 | ||
e2fa159e JL |
1164 | Mon Dec 1 16:21:08 1997 Craig Burley <burley@gnu.org> |
1165 | ||
1166 | * com.c (ffecom_arglist_expr_): Crash if non-supplied | |
1167 | optional arg isn't passed as an address. | |
1168 | Pass null pointer explicitly, instead of via ffecom routine. | |
1169 | If incoming argstring is NULL, substitute pointer to "0". | |
1170 | Recognize '0' as ending the usual arg stuff, just like '\0'. | |
1171 | ||
6d433196 CB |
1172 | Sun Nov 30 22:22:22 1997 Craig Burley <burley@gnu.org> |
1173 | ||
1174 | * intdoc.c: Minor fix-ups. | |
1175 | ||
1176 | * intrin.c (ffeintrin_check_): Fix up indentation a bit. | |
1177 | ||
44d2eabc JL |
1178 | * intrin.def: Fix up spacing a bit. |
1179 | ||
df3be384 DL |
1180 | Tue Nov 25 15:33:28 1997 Jeffrey A Law (law@cygnus.com) |
1181 | ||
1182 | * Make-lang.in (f77.all.build): Add $(exeext) to binary files. | |
1183 | (f77.all.cross, f77.start.encap): Simliarly. | |
1184 | ||
1185 | Fri Nov 21 09:35:20 1997 Fred Fish <fnf@cygnus.com> | |
1186 | ||
1187 | * Make-lang.in (stmp-f2c.h): Move inclusion of F77_FLAGS_TO_PASS | |
1188 | to before override of CC so that the override works. | |
1189 | ||
1190 | Thu Nov 20 00:58:14 1997 H.J. Lu (hjl@gnu.ai.mit.edu) | |
1191 | ||
1192 | * Make-lang.in (f77.install-info): Depend on f77.info. | |
1193 | ||
e2fa159e JL |
1194 | 1997-11-17 Dave Love <d.love@dl.ac.uk> |
1195 | ||
1196 | * com.c (ffecom_arglist_expr_): Pass null pointers for optional | |
1197 | args which aren't supplied. | |
6d433196 | 1198 | |
44d2eabc JL |
1199 | Sun Nov 16 21:45:43 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
1200 | ||
1201 | * Make-lang.in (f77.install-info): Depend on f77.info. | |
1202 | ||
df3be384 DL |
1203 | 1997-11-14 Dave Love <d.love@dl.ac.uk> |
1204 | ||
1205 | * intrin.def: Supply gfrt for CPU_TIME. Generalize arg types of | |
1206 | INT2, INT8, per doc. | |
1207 | ||
44d2eabc JL |
1208 | 1997-11-06 Dave Love <d.love@dl.ac.uk> |
1209 | ||
1210 | * intrin.def: Allow non-integer args for INT2 and INT8 (per | |
1211 | documentation). | |
1212 | ||
df3be384 DL |
1213 | Sun Nov 2 19:49:51 1997 Richard Henderson <rth@cygnus.com> |
1214 | ||
1215 | * com.c (ffecom_expr_): Only use TREE_TYPE argument for simple | |
1216 | arithmetic; convert types as necessary; recurse with target tree type. | |
1217 | ||
44d2eabc JL |
1218 | Tue Oct 28 02:21:25 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1219 | ||
1220 | * lang-options.h: Add -fgnu-intrinsics-* and | |
1221 | -fbadu77-intrinsics-* options. | |
1222 | ||
56a0044b JL |
1223 | Sun Oct 26 02:36:21 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1224 | ||
1225 | * com.c (lang_print_error_function): Fix to more | |
1226 | reliably notice when the diagnosed region changes. | |
1227 | ||
1228 | Sat Oct 25 23:43:36 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1229 | ||
1230 | Fix 950327-0.f: | |
1231 | * sta.c, sta.h (ffesta_outpooldisp): New function. | |
1232 | * std.c (ffestd_stmt_pass_): Don't kill NULL pool. | |
1233 | (ffestd_R842): If pool already preserved, save NULL | |
1234 | for pool, because it should be killed only once. | |
1235 | ||
1236 | * malloc.c [MALLOC_DEBUG]: Put initializer for `name' | |
1237 | component in braces, to avoid compiler warning. | |
1238 | ||
df3be384 DL |
1239 | Wed Oct 22 11:37:41 1997 Richard Henderson <rth@cygnus.com> |
1240 | ||
1241 | * com.c (ffecom_expr_): Take an new arg TREE_TYPE that if non-null | |
1242 | specifies the type in which to do the calculation. Change all callers. | |
1243 | [FFEBLD_opARRAYREF]: Force the index expr to use sizetype. | |
1244 | ||
1245 | Thu Oct 16 02:04:08 1997 Paul Koning <pkoning@xedia.com> | |
1246 | ||
1247 | * Make-lang.in (stmp-f2c.h): Don't configure the runtime | |
1248 | directory if LANGUAGES does not include f77. | |
1249 | ||
1250 | Mon Oct 13 12:12:41 1997 Richard Henderson <rth@cygnus.com> | |
1251 | ||
1252 | * Make-lang.in (g77*): Copied from cp/Make-lang.in g++*. | |
1253 | * g77spec.c: New file, mostly copied from g++spec.c | |
1254 | * g77.c: Removed. | |
1255 | ||
a2977d2d CB |
1256 | Fri Oct 10 13:00:48 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1257 | ||
1258 | * ste.c (ffeste_begin_iterdo_): Fix loop setup so iteration | |
1259 | variable is modified only after the #iterations is calculated; | |
1260 | otherwise if the iteration variable is aliased to any of the | |
1261 | operands in the start, end, or increment expressions, the | |
1262 | wrong #iterations might be calculated. | |
1263 | ||
1264 | * com.c (ffecom_save_tree): Fix indentation. | |
1265 | ||
df3be384 DL |
1266 | Mon Oct 6 14:15:03 1997 Jeffrey A Law (law@cygnus.com) |
1267 | ||
1268 | * Make-lang.in (f77.mostlyclean): Clean up stuff in the | |
1269 | object tree too. | |
1270 | (f77.clean, f77.distclean, f77.maintainer-clean): Likewise. | |
1271 | ||
44d2eabc JL |
1272 | 1997-10-05 Dave Love <d.love@dl.ac.uk> |
1273 | ||
1274 | * intrin.def: Make SECOND_subr's arg generic real for people | |
1275 | porting from Cray and making everything double precision. | |
1276 | ||
df3be384 DL |
1277 | Wed Oct 1 01:45:36 1997 Philippe De Muyter <phdm@info.ucl.ac.be> |
1278 | ||
1279 | * g77.c (pexecute, main): Use unlink, not remove. | |
1280 | ||
82d109f2 JL |
1281 | Mon Sep 29 16:18:21 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1282 | ||
1283 | * stu.c (ffestu_list_exec_transition_, | |
1284 | ffestu_dummies_transition_): Specify `bool' type for | |
1285 | `in_progress' variables. | |
1286 | ||
1287 | * com.h (assemble_string): Declare this routine (instead | |
1288 | of #include'ing "output.h" from gcc) to eliminate warnings | |
1289 | from lex.c. | |
1290 | ||
df3be384 DL |
1291 | Mon Sep 29 10:37:07 1997 Jeffrey A Law (law@cygnus.com) |
1292 | ||
1293 | * intdoc.c (main): Remove unused attribute for main's arguments. | |
1294 | ||
1295 | Sun Sep 28 01:47:17 1997 Jeffrey A Law (law@cygnus.com) | |
1296 | ||
1297 | * Make-lang.in (G77_FLAGS_TO_PASS): Pass down RANLIB, RANLIB_TEST | |
1298 | and AR instead of the _FOR_TARGET versions. | |
1299 | ||
1300 | Tue Sep 23 00:39:57 1997 Alexandre Oliva <oliva@dcc.unicamp.br> | |
1301 | ||
1302 | * Make-lang.in: install.texi was renamed to g77install.texi | |
1303 | * install0.texi: Likewise. | |
1304 | ||
82d109f2 JL |
1305 | Fri Sep 19 01:12:27 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1306 | ||
e84aaeeb | 1307 | * expr.c (ffeexpr_reduced_eqop2_): |
82d109f2 JL |
1308 | (ffeexpr_reduced_relop2_): Minor fixes to diagnostic code. |
1309 | ||
1310 | * fini.c (main): Change return type to `int'. | |
1311 | ||
df3be384 DL |
1312 | Thu Sep 18 17:31:38 1997 Jeffrey A Law (law@cygnus.com) |
1313 | ||
1314 | * proj.h (FFEPROJ_BSEARCH): Delete all references. | |
1315 | (FFEPROJ_STRTOUL): Likewise. | |
1316 | * proj.c (bsearch): Compile this if no bsearch is provided by the | |
1317 | host system. | |
1318 | (strtoul): Similarly. | |
1319 | ||
1320 | * g77install.texi: Renamed from install.texi | |
1321 | * g77.texi: Corresponding changes. | |
1322 | ||
1323 | * fini.c (main): Return type is int. | |
1324 | ||
1325 | * com.c (lang_printable_name): Use verbosity argument. | |
1326 | ||
1327 | Thu Sep 18 16:08:40 1997 Jeffrey A Law (law@cygnus.com) | |
1328 | ||
1329 | * Make-lang.in: Fix merge problems. | |
1330 | ||
82d109f2 JL |
1331 | Wed Sep 17 10:47:08 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1332 | ||
1333 | * com-rt.def (FFECOM_gfrtDSIGN, FFECOM_gfrtISIGN, | |
1334 | FFECOM_gfrtSIGN): Add second argument. | |
1335 | ||
1336 | * expr.c (ffeexpr_cb_comma_c_): Trivial fixes. | |
1337 | ||
df3be384 DL |
1338 | Sun Sep 14 21:01:23 1997 Jeffrey A Law (law@cygnus.com) |
1339 | ||
1340 | * Make-lang.in: Various changes to build info files | |
1341 | in the object tree rather than the source tree. | |
1342 | ||
1343 | * proj.h: Include ctype.h. | |
1344 | ||
1345 | Sun Sep 14 12:35:20 1997 Fred Fish (fnf@ninemoons.com) | |
1346 | ||
1347 | * proj.h (isascii): Provide a default definition if none is available. | |
1348 | ||
1349 | Thu Sep 11 19:26:10 1997 Dave Love <d.love@dl.ac.uk> | |
1350 | ||
1351 | * config-lang.in: Remove the messages about possible build problems. | |
1352 | ||
1353 | Wed Sep 10 16:39:47 1997 Jim Wilson <wilson@cygnus.com> | |
1354 | ||
1355 | * Make-lang.in (LN, LN_S): New macros, use where appropriate. | |
1356 | ||
1357 | Tue Sep 9 13:20:40 1997 Jim Wilson <wilson@cygnus.com> | |
1358 | ||
1359 | * g77.c (pexecute, doit): Add checks for __CYGWIN32__. | |
1360 | ||
34b8e428 JL |
1361 | Tue Sep 9 01:59:35 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1362 | ||
1363 | * Version 0.5.21 released. | |
1364 | ||
1365 | Tue Sep 9 00:31:01 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1366 | ||
1367 | * intdoc.c (dumpem): Put appropriate commentary in | |
1368 | output file, so readers know it isn't source. | |
1369 | ||
df3be384 DL |
1370 | Wed Aug 27 20:32:03 1997 Jeffrey A Law (law@cygnus.com) |
1371 | ||
1372 | * top.c (ffe_decode_option): Turn on flag_move_all_moveables | |
1373 | and flag_reduce_all_givs. | |
1374 | ||
34b8e428 JL |
1375 | Wed Aug 27 08:08:25 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1376 | ||
1377 | * proj.h: Always #include "config.j" first, to pick up | |
1378 | gcc's configuration. | |
1379 | * com.c: Change bcopy() and bzero() calls to memcpy() | |
1380 | and memset() calls, to make more of g77 ANSI C. | |
1381 | ||
1382 | 1997-08-26 Dave Love <d.love@dl.ac.uk> | |
1383 | ||
1384 | * Make-lang.in ($(srcdir)/f/runtime/configure, | |
1385 | $(srcdir)/f/runtime/libU77/configure): Fix for when srcdir isn't | |
1386 | relative. | |
1387 | ||
795232f7 JL |
1388 | Tue Aug 26 05:59:21 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1389 | ||
1390 | * ansify.c (main): Make sure readers of stdout know | |
1391 | it's derived from stdin; omit comment text; get source | |
1392 | line numbers in future stderr output to be correct. | |
1393 | ||
1394 | Tue Aug 26 01:36:01 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1395 | ||
1396 | Fix 970825-0.f: | |
1397 | * stb.c (ffestb_R5284_): Allow OPEN_PAREN after closing | |
1398 | SLASH as well as NAME. | |
1399 | ||
1400 | Mon Aug 25 23:48:17 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1401 | ||
1402 | Changes to allow g77 docs to be built entirely from scratch | |
1403 | using any ANSI C compiler, not requiring GNU C: | |
1404 | * Make-lang.in ($(srcdir)/f/intdoc.texi): "Pipe" new | |
1405 | location of intrinsic documentation data base, f/intdoc.in, | |
1406 | through new `ansify' program to append `\n\' to quoted | |
1407 | newlines, into f/intdoc.h0. Do appropriate cleanups. Explain. | |
1408 | (f77.mostlyclean): Add f/ansify and f/intdoc.h0 to cleanups. | |
1409 | * f/ansify.c: New program. | |
1410 | * f/intdoc.c: Fix so it conforms to ANSI C. | |
1411 | #include f/intdoc.h0 instead of f/intdoc.h. | |
1412 | Avoid some warnings. | |
1413 | * f/intdoc.h, f/intdoc.in: Rename the former to the latter; no | |
1414 | changes made to the content in this patch! | |
1415 | * f/intrin.h (ffeintrinFamily): Fix to conform to ANSI C. | |
1416 | ||
df3be384 DL |
1417 | Mon Aug 25 23:24:32 1997 H.J. Lu (hjl@gnu.ai.mit.edu) |
1418 | ||
1419 | * Make-lang.in ($(srcdir)/f/runtime/configure, | |
1420 | $(srcdir)/f/runtime/libU77/configure, f77.mostlyclean, | |
1421 | f77.clean, f77.distclean, f77.maintainer-clean, f77.realclean): | |
1422 | Handle absolute pathname of $(srcdir). | |
1423 | (stmp-f2c.h): New. | |
1424 | (include/f2c.h, f/runtime/Makefile, f/runtime/libF77/Makefile, | |
1425 | f/runtime/libI77/Makefile, f/runtime/libU77/Makefile): Only | |
1426 | depend on stmp-f2c.h. | |
1427 | (f77.maintainer-clean): Don't make itself. | |
1428 | ||
1429 | Sun Aug 24 17:00:27 1997 Jim Wilson <wilson@cygnus.com> | |
1430 | ||
1431 | * Make-lang.in (f77.install-info): Don't cd into srcdir. Add srcdir | |
1432 | to filenames. Use sed to extract base filename for install. | |
1433 | ||
795232f7 JL |
1434 | Sun Aug 24 06:52:48 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1435 | ||
1436 | Fix up g77 compiler data base for libf2c routines: | |
1437 | * com-rt.def (FFECOM_gfrtSIGNAL): Change return type to | |
1438 | FTNINT to match actual code. | |
1439 | ||
1440 | * com.c (ffecomRttype_): Replace FFECOM_rttypeINT_ with | |
1441 | FFECOM_rttypeFTNINT_. | |
1442 | Add and fix up comments. | |
1443 | (ffecom_make_gfrt_, ffecom_gfrt_basictype, | |
1444 | ffecom_gfrt_kindtype): Replace FFECOM_rttypeINT_ with | |
1445 | FFECOM_rttypeFTNINT_; add FFECOM_rttypeDOUBLEREAL_. | |
1446 | ||
df3be384 DL |
1447 | Thu Aug 21 13:15:29 1997 Jim Wilson <wilson@cygnus.com> |
1448 | ||
1449 | * Make-lang.in (f77): Delete f77-runtime. | |
1450 | (f77.all.build, f77.all.cross, f77.rest.encap): Add f77-runtime. | |
1451 | ||
795232f7 JL |
1452 | Wed Aug 20 17:18:40 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1453 | ||
1454 | * global.c (ffeglobal_ref_progunit_): It's okay to have | |
1455 | a different CHARACTER*n length for a reference if the | |
1456 | existing length is for another reference, not a definition. | |
1457 | ||
df3be384 DL |
1458 | Wed Aug 20 16:36:59 1997 Jim Wilson <wilson@cygnus.com> |
1459 | ||
1460 | * intdoc.texi: Readd generated file. | |
1461 | ||
795232f7 JL |
1462 | Mon Aug 18 14:27:18 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1463 | ||
1464 | Fix 970814-0.f: | |
1465 | * global.c (ffeglobal_new_progunit_): Distinguish | |
1466 | between previously defined, versus inferred, filewide | |
1467 | when it comes to diagnostics. | |
1468 | ||
1469 | Fix 970816-1.f: | |
1470 | * global.c (ffeglobal_ref_progunit_): Change BDATA into EXT | |
1471 | right at the beginning, so EXTERNAL FOO followed later | |
1472 | by SUBROUTINE FOO is not diagnosed. | |
1473 | ||
1474 | Fix 970813-0.f: | |
1475 | * com-rt.def (FFECOM_gfrtALARM): Returns `integer', not | |
1476 | `void'. | |
1477 | ||
df3be384 DL |
1478 | Mon Aug 18 09:01:54 1997 Jeffrey A Law (law@cygnus.com) |
1479 | ||
1480 | * Makefile.in (F77_OBJS): Re-alphabetize. | |
1481 | * Make-lang.in (F77_SRCS): Likewise. | |
1482 | ||
1483 | Sun Aug 17 08:35:11 1997 Jeffrey A Law (law@cygnus.com) | |
1484 | ||
1485 | * INSTALL: Rebuilt. | |
1486 | * install.texi: Remove "Object File Differences" section. Remove | |
1487 | all references to zzz.o failing comparison tests. | |
1488 | * version.c, version.h: Renamed from zzz.c and zzz.h. Remove | |
1489 | date and time stamps so a 3 stage build reports no differences. | |
1490 | * Make-lang.in: Corresponding changes. | |
1491 | * Makefile.in: Likewise. | |
1492 | * g77.c, parse.c: Likewise. | |
1493 | ||
1494 | * intdoc.texi: Remove generated file from distribution. | |
1495 | ||
795232f7 JL |
1496 | Sun Aug 17 03:32:44 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1497 | ||
1498 | Fix up problems when virtual memory exhausted: | |
1499 | * malloc.c (malloc_new_): Use gcc's xmalloc(), so we | |
1500 | print a nicer message when malloc returns no memory. | |
1501 | (malloc_resize_): Ditto for xrealloc(). | |
1502 | ||
1503 | * Make-lang.in, Makefile.in: Comment out lines containing | |
1504 | just formfeeds. | |
1505 | ||
1506 | Sat Aug 16 19:41:33 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1507 | ||
1508 | * com.c (ffecom_make_gfrt_): For rttypeREAL_F2C_, return | |
1509 | double_type_node; for rttypeREAL_GNU_, return | |
1510 | _real_type_node. | |
1511 | ||
1512 | 1997-08-13 Dave Love <d.love@dl.ac.uk> | |
1513 | ||
1514 | * config-lang.in (diff_excludes): Add some hints about known | |
1515 | problematic platforms. | |
1516 | ||
1517 | 1997-08-13 Dave Love <d.love@dl.ac.uk> | |
1518 | ||
1519 | * intdoc.h: Document `alarm'. | |
1520 | ||
df3be384 DL |
1521 | Tue Aug 12 10:23:02 1997 Jeffrey A Law (law@cygnus.com) |
1522 | ||
1523 | * config-lang.in: Don't demand the backend patch. | |
1524 | * com.c (lang_printable_name): Second argument is now an int. Don't | |
1525 | store into the value of the second argument. | |
1526 | * top.c (ffe_decode_option): Temporarily disable setting | |
1527 | of "Toon" loop options until we figure out how to address | |
1528 | them. | |
1529 | ||
1530 | Mon Aug 11 23:18:35 1997 Jeffrey A Law (law@cygnus.com) | |
1531 | ||
1532 | * g77-0.5.21-19970811 Imported. | |
1533 | This file describes changes to the front end necessary to make | |
1534 | it work with egcs. | |
1535 | ||
5ff904cd JL |
1536 | Mon Aug 11 21:19:22 1997 Craig Burley <burley@gnu.ai.mit.edu> |
1537 | ||
1538 | * Make-lang.in ($(RUNTIMESTAGESTUFF)): Add | |
1539 | f/runtime/stamp-lib. | |
1540 | ||
1541 | Mon Aug 11 01:52:03 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1542 | ||
1543 | * com.c (ffecom_build_complex_constant_): Go with the | |
1544 | new build_complex() approach used in gcc-2.8. | |
1545 | ||
1546 | * com.c (ffecom_sym_transform_): Don't set | |
1547 | DECL_IN_SYSTEM_HEADER for a tree node that isn't | |
1548 | a VAR_DECL, which happens when var is in common! | |
1549 | ||
1550 | * com.c (ffecom_expr_intrinsic_) (case FFEINTRIN_impALARM): | |
1551 | No need to test codegen_imp -- there's only one valid here. | |
1552 | ||
1553 | * intrin.def (FFEINTRIN_impALARM): Specify `Status' argument | |
1554 | as write-only. | |
1555 | ||
1556 | Fri Aug 8 05:40:23 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1557 | ||
1558 | Substantial changes to accommodate distinctions among | |
1559 | run-time routines that support intrinsics, and between | |
1560 | routines that compute and return the same type vs. those | |
1561 | that compute one type and return another (or `void'): | |
1562 | * com-rt.def: Specify new return type REAL_F2C_ instead | |
1563 | of many DOUBLE_, COMPLEX_F2C_ instead of COMPLEX_, and | |
1564 | so on. | |
1565 | Clear up the *BES* routines "once and for all". | |
1566 | * com.c: New return types. | |
1567 | (ffecom_convert_narrow_, ffecom_convert_widen_): | |
1568 | New functions that are "safe" variants of convert(), | |
1569 | to catch errors that ffecom_expr_intrinsic_() now | |
1570 | no longer catches. | |
1571 | (ffecom_arglist_expr_): Ensure arguments are not | |
1572 | converted to narrower types. | |
1573 | (ffecom_call_): Ensure return value is not converted | |
1574 | to a wider type. | |
1575 | (ffecom_char_args_): Use new ffeintrin_gfrt_direct() | |
1576 | routine. | |
1577 | (ffecom_expr_intrinsic_): Simplify how run-time | |
1578 | routine is selected (via `gfrt' only now; lose the | |
1579 | redundant `ix' variable). | |
1580 | Eliminate the `library' label; any code that doesn't | |
1581 | return directly just `break's out now with `gfrt' | |
1582 | set appropriately. | |
1583 | Set `gfrt' to default choice initially, either a | |
1584 | fast direct form or, if not available, a slower | |
1585 | indirect-callable form. | |
1586 | (ffecom_make_gfrt_): No longer need to do special | |
1587 | check for complex; it's built into the new return-type | |
1588 | regime. | |
1589 | (ffecom_ptr_to_expr): Use new ffeintrin_gfrt_indirect() | |
1590 | routine. | |
1591 | * intrin.c, intrin.h: `gfrt' field replaced with three fields, | |
1592 | so it is easier to provide faster direct-callable and | |
1593 | GNU-convention indirect-callable routines in the future. | |
1594 | DEFIMP macro adjusted accordingly, along with all its uses. | |
1595 | (ffeintrin_gfrt_direct): New function. | |
1596 | (ffeintrin_gfrt_indirect): Ditto. | |
1597 | (ffeintrin_is_actualarg): If `-fno-f2c' is in effect, | |
1598 | require a GNU-callable version of intrinsic instead of | |
1599 | an f2c-callable version, so indirect calling is still checked. | |
1600 | * intrin.def: Replace one GFRT field with the three new fields, | |
1601 | as appropriate for each DEFIMP intrinsic. | |
1602 | ||
1603 | * com.c (ffecom_stabilize_aggregate_, | |
1604 | ffecom_convert_to_complex_): Make these `static'. | |
1605 | ||
1606 | Thu Aug 7 11:24:34 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1607 | ||
1608 | Provide means for front end to determine actual | |
1609 | "standard" return type for an intrinsic if it is | |
1610 | passed as an actual argument: | |
1611 | * com.h, com.c (ffecom_gfrt_basictype, | |
1612 | ffecom_gfrt_kindtype): New functions. | |
1613 | (ffecom_gfrt_kind_type_): Replaced with new function. | |
1614 | All callers updated. | |
1615 | (ffecom_make_gfrt_): No longer need do anything | |
1616 | with kind type. | |
1617 | ||
1618 | * intrin.c (ffeintrin_basictype, ffeintrin_kindtype): | |
1619 | Now returns correct type info for specific intrinsic | |
1620 | (based on type of run-time-library implementation). | |
1621 | ||
1622 | Wed Aug 6 23:08:46 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1623 | ||
1624 | * global.c (ffeglobal_ref_progunit_): Don't reset | |
1625 | number of arguments just due to new type info, | |
1626 | so useful warnings can be issued. | |
1627 | ||
1628 | 1997-08-06 Dave Love <d.love@dl.ac.uk> | |
1629 | ||
1630 | * intrin.def: Fix IDATE_vxt argument order. | |
1631 | * intdoc.h: Likewise. | |
1632 | ||
1633 | Thu Jul 31 22:22:03 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1634 | ||
1635 | * global.c (ffeglobal_proc_ref_arg): If REF/DESCR | |
1636 | disagreement, DESCR is CHARACTER, and types disagree, | |
1637 | pretend the argsummary agrees so the message ends up | |
1638 | being about type disagreement. | |
1639 | (ffeglobal_proc_def_arg): Ditto. | |
1640 | ||
1641 | * expr.c (ffeexpr_token_first_rhs_3_): Set info for LABTOK | |
1642 | to NONE of everything, to avoid misdiagnosing filewide | |
1643 | usage of alternate returns. | |
1644 | ||
1645 | Sun Jul 20 23:07:47 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1646 | ||
1647 | * com.c (ffecom_sym_transform_): If type gets set | |
1648 | to error_mark_node, just return that for transformed symbol. | |
1649 | (ffecom_member_phase2_): If type gets set to error_mark_node, | |
1650 | just return. | |
1651 | (ffecom_check_size_overflow_): Add `dummy' argument to | |
1652 | flag that type is for a dummy, update all callers. | |
1653 | ||
1654 | Sun Jul 13 17:40:53 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1655 | ||
1656 | Fix 970712-1.f: | |
1657 | * where.c (ffewhere_set_from_track): If start point | |
1658 | is too large, just use initial start point. 0.6 should | |
1659 | fix all this properly. | |
1660 | ||
1661 | Fix 970712-2.f: | |
1662 | * com.c (ffecom_sym_transform_): Preserve error_mark_node for type. | |
1663 | (ffecom_type_localvar_): Ditto. | |
1664 | (ffecom_sym_transform_): If type is error_mark_node, | |
1665 | don't error-check decl size, because back end responds by | |
1666 | setting that to an integer 0 instead of error_mark_node. | |
1667 | (ffecom_transform_common_): Same as earlier fix to _transform_ | |
1668 | in that size is checked by dividing BITS_PER_UNIT instead of | |
1669 | multiplying. | |
1670 | (ffecom_transform_equiv_): Ditto. | |
1671 | ||
1672 | Fix 970712-3.f: | |
1673 | * stb.c (ffestb_R10014_): Fix flaky fall-through in error | |
1674 | test for FFELEX_typeCONCAT by just replicating the code, | |
1675 | and do FFELEX_typeCOLONCOLON while at it. | |
1676 | ||
1677 | 1997-07-07 Dave Love <d.love@dl.ac.uk> | |
1678 | ||
1679 | * intdoc.h: Add various missing pieces; correct GMTIME, LTIME | |
1680 | result ordering. | |
1681 | ||
1682 | * intrin.def, com-rt.def: Add alarm. | |
1683 | ||
1684 | * com.c (ffecom_expr_intrinsic_): Add case for alarm. | |
1685 | ||
1686 | Thu Jun 26 04:19:40 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1687 | ||
1688 | Fix 970302-3.f: | |
1689 | * com.c (ffecom_sym_transform_): For sanity-check compare | |
1690 | of gbe size of local variable to g77 expectation, | |
1691 | use varasm.c/assemble_variable technique of dividing | |
1692 | BITS_PER_UNIT out of gbe info instead of multiplying | |
1693 | g77 info up, to avoid crash when size in bytes is very | |
1694 | large, and overflows an `int' or similar when multiplied. | |
1695 | ||
1696 | Fix 970626-2.f: | |
1697 | * com.c (ffecom_finish_symbol_transform_): Don't bother | |
1698 | transforming a dummy argument, to avoid a crash. | |
1699 | * ste.c (ffeste_R1227): Don't return a value if the | |
1700 | result decl, or its type, is error_mark_node. | |
1701 | ||
1702 | Fix 970626-4.f: | |
1703 | * lex.c (ffelex_splice_tokens): `-fdollar-ok' is | |
1704 | irrelevant to whether a DOLLAR token should be made | |
1705 | from an initial character of `$'. | |
1706 | ||
1707 | Fix 970626-6.f: | |
1708 | * stb.c (ffestb_do3_): DO iteration variable is an | |
1709 | lhs, not rhs, expression. | |
1710 | ||
1711 | Fix 970626-7.f and 970626-8.f: | |
1712 | * expr.c (ffeexpr_cb_comma_i_1_): Set IMPDO expression | |
1713 | to have clean info, because undefined rank, for example, | |
1714 | caused crash on mangled source on UltraSPARC but not | |
1715 | on Alpha for a series of weird reasons. | |
1716 | (ffeexpr_cb_close_paren_): If not CLOSE_PAREN, push | |
1717 | opANY expression onto stack instead of attempting | |
1718 | to mimic what program might have wanted. | |
1719 | (ffeexpr_cb_close_paren_): Don't wrap opPAREN around | |
1720 | opIMPDO, just warn that it's gratuitous. | |
1721 | * bad.def (FFEBAD_IMPDO_PAREN): New warning. | |
1722 | ||
1723 | Fix 970626-9.f: | |
1724 | * expr.c (ffeexpr_declare_parenthesized_): Must shut down | |
1725 | parsing in kindANY case, otherwise the parsing engine might | |
1726 | decide there's an ambiguity. | |
1727 | (ffeexpr_token_name_rhs_): Eliminate parentypeSUBROUTINE_ | |
1728 | case, so we crash right away if it comes through. | |
1729 | * st.c, st.h, sta.c, sta.h (ffest_shutdown, ffesta_shutdown): | |
1730 | New functions. | |
1731 | ||
1732 | Tue Jun 24 19:47:29 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1733 | ||
1734 | * com.c (ffecom_check_size_overflow_): New function | |
1735 | catches some cases of the size of a type getting | |
1736 | too large. varasm.c must catch the rest. | |
1737 | (ffecom_sym_transform_): Use new function. | |
1738 | (ffecom_type_localvar_): Ditto. | |
1739 | ||
1740 | Mon Jun 23 01:09:28 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1741 | ||
1742 | * global.c (ffeglobal_proc_def_arg): Fix comparison | |
1743 | of argno to #args. | |
1744 | (ffeglobal_proc_ref_arg): Ditto. | |
1745 | ||
1746 | * lang-options.h, top.c: Rename `-fdebug' to `-fxyzzy', | |
1747 | since it's an unsupported internals option and some | |
1748 | poor user might guess that it does something. | |
1749 | ||
1750 | * bad.def: Make a warning for each filewide diagnostic. | |
1751 | Put all filewides together. | |
1752 | * com.c (ffecom_sym_transform_): Don't substitute | |
1753 | known global tree for global entities when `-fno-globals'. | |
1754 | * global.c (ffeglobal_new_progunit_): Don't produce | |
1755 | fatal diagnostics about globals when `-fno-globals'. | |
1756 | Instead, produce equivalent warning when `-Wglobals'. | |
1757 | (ffeglobal_proc_ref_arg): Ditto. | |
1758 | (ffeglobal_proc_ref_nargs): Ditto. | |
1759 | (ffeglobal_ref_progunit_): Ditto. | |
1760 | * lang-options.h, top.c, top.h: New `-fno-globals' option. | |
1761 | ||
1762 | Sat Jun 21 12:32:54 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1763 | ||
1764 | * expr.c (ffeexpr_fulfill_call_): Set array variable | |
1765 | to avoid warning about uninitialized variable. | |
1766 | ||
1767 | * Make-lang.in: Get rid of any setting of HOST_* macros, | |
1768 | since these will break gcc's build! | |
1769 | * makefile: New file to make building derived files | |
1770 | easier. | |
1771 | ||
1772 | Thu Jun 19 18:19:28 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1773 | ||
1774 | * g77.c (main): Install Emilio Lopes' patch to support | |
1775 | Ratfor, and to fix the printing of the version string | |
1776 | to go to stderr, not stdout. | |
1777 | * lang-specs.h: Install Emilio Lopes' patch to support | |
1778 | Ratfor, and patch the result to support picking up | |
1779 | `*f771' from the `specs' file. | |
1780 | ||
1781 | Thu Jun 12 14:36:25 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1782 | ||
1783 | * storag.c (ffestorag_update_init, ffestorag_update_save): | |
1784 | Also update parent, in case equivalence processing | |
1785 | has already eliminated pointers to it via the | |
1786 | local equivalence info. | |
1787 | ||
1788 | Tue Jun 10 14:08:26 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1789 | ||
1790 | * intdoc.c: Add cross-reference to end of description | |
1791 | of any generic intrinsic pointing to other intrinsics | |
1792 | with the same name. | |
1793 | ||
1794 | Warn about explicit type declaration for intrinsic | |
1795 | that disagrees with invocation: | |
1796 | * expr.c (ffeexpr_paren_rhs_let_): Preserve type info | |
1797 | for intrinsic functions. | |
1798 | (ffeexpr_token_funsubstr_): Ditto. | |
1799 | * intrin.c (ffeintrin_fulfill_generic): Warn if type | |
1800 | info of fulfilled intrinsic invocation disagrees with | |
1801 | explicit type info given symbol. | |
1802 | (ffeintrin_fulfill_specific): Ditto. | |
1803 | * stc.c (ffestc_R1208_item): Preserve type info | |
1804 | for intrinsics. | |
1805 | (ffestc_R501_item): Ditto. | |
1806 | ||
1807 | Mon Jun 9 17:45:44 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1808 | ||
1809 | * com.c (ffecom_expr_intrinsic_): Fix several of the | |
1810 | libU77/libF77-unix handlers to properly convert their | |
1811 | arguments. | |
1812 | ||
1813 | * com-rt.def (FFECOM_gfrtFSTAT): Append missing "i" to | |
1814 | arg string. | |
1815 | ||
1816 | Fri Jun 6 14:37:30 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1817 | ||
1818 | * com.c (ffecom_expr_intrinsic_): Have a case statement | |
1819 | for every intrinsic implementation, so missing ones | |
1820 | are caught via gcc warnings. | |
1821 | Don't call ffeintrin_codegen_imp anymore. | |
1822 | * intrin.c (ffeintrin_fulfill_generic): Remove cg_imp | |
1823 | stuff from here. | |
1824 | (ffeintrin_codegen_imp): Delete this function. | |
1825 | * intrin.def, intrin.h: Remove DEFIMQ stuff from here | |
1826 | as well. | |
1827 | ||
1828 | Thu Jun 5 13:03:07 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1829 | ||
1830 | * top.c (ffe_decode_option): New -fbadu77-intrinsics-* | |
1831 | options. | |
1832 | * top.h: Ditto. | |
1833 | * intrin.h: New BADU77 family. | |
1834 | * intrin.c (ffeintrin_state_family): Ditto. | |
1835 | ||
1836 | Implement new scheme to track intrinsic names vs. forms: | |
1837 | * intrin.c (ffeintrin_fulfill_generic), | |
1838 | (ffeintrin_fulfill_specific), (ffeintrin_is_intrinsic), | |
1839 | intrin.def: The documented name is now either in the | |
1840 | generic info or, if no generic, in the specific info. | |
1841 | For a generic, the specific info contains merely the | |
1842 | distinguishing form (usually "function" or "subroutine"), | |
1843 | used for diagnostics about ambiguous references and | |
1844 | in the documentation. | |
1845 | ||
1846 | * intrin.def: Clean up formatting of DEFNAME block. | |
1847 | Convert many libU77 intrinsics into generics that | |
1848 | support both subroutine and function forms. | |
1849 | Put the function forms of side-effect routines into | |
1850 | the new BADU77 family. | |
1851 | Make MCLOCK and TIME return INTEGER*4 again, and add | |
1852 | INTEGER*8 equivalents called MCLOCK8 and TIME8. | |
1853 | Fix up more status return values to be written and | |
1854 | insist on them being I1 as well. | |
1855 | * com.c (ffecom_expr_intrinsic_): Lots of changes to | |
1856 | support new libU77 intrinsic interfaces. | |
1857 | ||
1858 | Mon Jun 2 00:37:53 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1859 | ||
1860 | * com.c (ffecom_init_0): Pointer type is now INTEGER(KIND=7), | |
1861 | not INTEGER(KIND=0), since we want to reserve KIND=0 for | |
1862 | future use. | |
1863 | ||
1864 | Thu May 29 14:30:33 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1865 | ||
1866 | Fix bugs preventing CTIME(I*4) from working correctly: | |
1867 | * com.c (ffecom_char_args_): For FUNCREF case, process | |
1868 | args to intrinsic just as they would be in | |
1869 | ffecom_expr_intrinsic_. | |
1870 | * com-rt.def (FFECOM_gfrtCTIME, FFECOM_gfrtTTYNAM): Fix | |
1871 | argument decls to specify `&'. | |
1872 | ||
1873 | Wed May 28 22:19:49 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1874 | ||
1875 | Fix gratuitous warnings exposed by dophot aka 970528-1: | |
1876 | * global.c (ffeglobal_proc_def_arg, ffeglobal_proc_ref_arg): | |
1877 | Support distinct function/subroutine arguments instead of | |
1878 | just procedures. | |
1879 | * global.h: Ditto. | |
1880 | * expr.c (ffeexpr_fulfill_call_): A SYMTER with kindNONE | |
1881 | also is a procedure (either function or subroutine). | |
1882 | ||
1883 | Mon May 26 20:25:31 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1884 | ||
1885 | * bad.def: Have several lexer diagnostics refer to | |
1886 | documentation for people who need more info on what Fortran | |
1887 | source code is supposed to look like. | |
1888 | ||
1889 | * expr.c (ffeexpr_reduced_bool1_), bad.def: New diagnostics | |
1890 | specific to .NOT. now mention only one operand instead | |
1891 | of two. | |
1892 | ||
1893 | * g77.c: Recognize -fsyntax-only, similar to -c etc. | |
1894 | (lookup_option): Fix bug that prevented non-`--' options | |
1895 | from being recognized. | |
1896 | ||
1897 | Sun May 25 04:29:04 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1898 | ||
1899 | * intrin.def (FFEINTRIN_impCTIME): Accept `I*' expression | |
1900 | for STime instead of requiring `I2'. | |
1901 | ||
1902 | Tue May 20 16:14:40 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1903 | ||
1904 | * symbol.c (ffesymbol_reference): All references to | |
1905 | standard intrinsics are considered explicit, so as | |
1906 | to avoid generating basically useless warnings. | |
1907 | * intrin.c, intrin.h (ffeintrin_is_standard): Returns TRUE | |
1908 | if intrinsic is standard. | |
1909 | ||
1910 | Sun May 18 21:14:59 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1911 | ||
1912 | * com-rt.def: Changed all external names of the | |
1913 | form `"\([a-z0-9]*\)_' to `"G77_\1_0"' so as to | |
1914 | allow any name valid as an intrinsic to be used | |
1915 | as such and as a user-defined external procedure | |
1916 | name or common block as well. | |
1917 | ||
1918 | Thu May 8 13:07:10 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1919 | ||
1920 | * expr.c (ffeexpr_cb_end_notloc_): For %VAL, %REF, and | |
1921 | %DESCR, copy arg info into new node. | |
1922 | ||
1923 | Mon May 5 14:42:17 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1924 | ||
1925 | From Uwe F. Mayer <mayer@math.Vanderbilt.Edu>: | |
1926 | * Make-lang.in (g77-cross): Fix typo in g77.c path. | |
1927 | ||
1928 | From Brian McIlwrath <bkm@star.rl.ac.uk>: | |
1929 | * lang-specs.h: Have g77 pick up options from a section | |
1930 | labeled `*f771' of the `specs' file. | |
1931 | ||
1932 | Sat May 3 02:46:08 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1933 | ||
1934 | * intrin.def (FFEINTRIN_defSIGNAL): Add optional `Status' | |
1935 | argument that com.c already expects (per Dave Love). | |
1936 | ||
1937 | More changes to support better tracking of (filewide) | |
1938 | globals, in particular, the arguments to procedures: | |
1939 | * bad.def (FFEBAD_FILEWIDE_NARGS, FFEBAD_FILEWIDE_NARGS_W, | |
1940 | FFEBAD_FILEWIDE_ARG, FFEBAD_FILEWIDE_ARG_W): New diagnostics. | |
1941 | * expr.c (ffebad_fulfill_call_): Provide info on each | |
1942 | argument to ffeglobal. | |
1943 | * global.c, global.h (ffeglobal_proc_def_arg, | |
1944 | ffeglobal_proc_def_nargs, ffeglobal_proc_ref_arg, | |
1945 | ffeglobal_proc_ref_args): New functions. | |
1946 | (ffeglobalArgSummary, ffeglobalArgInfo_): New types. | |
1947 | ||
1948 | Tue Apr 29 18:35:41 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1949 | ||
1950 | More changes to support better tracking of (filewide) | |
1951 | globals: | |
1952 | * expr.c (ffeexpr_fulfill_call_): New function. | |
1953 | (ffeexpr_token_name_lhs_): Call after building procedure | |
1954 | reference expression. Also leave info field for ANY-ized | |
1955 | expression alone. | |
1956 | (ffeexpr_token_arguments_): Ditto. | |
1957 | ||
1958 | Mon Apr 28 20:04:18 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
1959 | ||
1960 | Changes to support better tracking of (filewide) | |
1961 | globals, mainly to avoid crashes due to inlining: | |
1962 | * bad.def: Go back to quoting intrinsic names, | |
1963 | (FFEBAD_FILEWIDE_DISAGREEMENT, FFEBAD_FILEWIDE_TIFF, | |
1964 | FFEBAD_FILEWIDE_TYPE_MISMATCH): New diagnostics. | |
1965 | (FFEBAD_INTRINSIC_EXPIMP, FFEBAD_INTRINSIC_GLOBAL): Reword | |
1966 | for clarity. | |
1967 | * com.c (ffecom_do_entry_, ffecom_start_progunit_, | |
1968 | ffecom_sym_transform_): Accommodate new FFEGLOBAL_typeEXT | |
1969 | possibility. | |
1970 | * expr.c (ffeexpr_sym_lhs_call_, ffeexpr_sym_lhs_extfunc_, | |
1971 | ffeexpr_sym_rhs_actualarg_, ffeexpr_declare_parenthesized_, | |
1972 | ffeexpr_paren_rhs_let_, ffeexpr_token_funsubstr_): | |
1973 | Fill in real kind info instead of leaving NONE where | |
1974 | appropriate. | |
1975 | Register references to intrinsics and globals with ffesymbol | |
1976 | using new ffesymbol_reference function instead of | |
1977 | ffesymbol_globalize. | |
1978 | * global.c (ffeglobal_type_string_): New array for | |
1979 | new diagnostics. | |
1980 | * global.h, global.c: | |
1981 | Replace ->init mechanism with ->tick mechanism. | |
1982 | Move other common-related members into a substructure of | |
1983 | a union, so the proc substructure can be introduced | |
1984 | to include members related to externals other than commons. | |
1985 | Don't complain about ANY-ized globals; ANY-ize globals | |
1986 | once they're complained about, in any case where code | |
1987 | generation could become a problem. | |
1988 | Handle global entries that have NONE type (seen as | |
1989 | intrinsics), EXT type (seen as EXTERNAL), and so on. | |
1990 | Keep track of kind and type of externals, both via | |
1991 | definition and via reference. | |
1992 | Diagnose disagreements about kind or type of externals | |
1993 | (such as functions). | |
1994 | (ffeglobal_ref_intrinsic, ffeglobal_ref_progunit_): New | |
1995 | functions. | |
1996 | * stc.c (ffestc_R1207_item, ffestc_R1208_item, | |
1997 | ffestc_R1219, ffestc_R1226): | |
1998 | Call ffesymbol_reference, not ffesymbol_globalize. | |
1999 | * stu.c (ffestu_sym_end_transition, | |
2000 | ffestu_sym_exec_transition): | |
2001 | Call ffesymbol_reference, not ffesymbol_globalize. | |
2002 | * symbol.c (ffesymbol_globalize): Removed... | |
2003 | (ffesymbol_reference): ...to this new function, | |
2004 | which more generally registers references to symbols, | |
2005 | globalizes globals, and calls on the ffeglobal module | |
2006 | to check globals filewide. | |
2007 | ||
2008 | * global.h, global.c: Rename some macros and functions | |
2009 | to more clearly distinguish common from other globals. | |
2010 | All callers changed. | |
2011 | ||
2012 | * com.c (ffecom_sym_transform_): Trees describing | |
2013 | filewide globals must be allocated on permanent obstack. | |
2014 | ||
2015 | * expr.c (ffeexpr_token_name_lhs_): Don't generate | |
2016 | gratuitous diagnostics for FFEINFO_whereANY case. | |
2017 | ||
2018 | Thu Apr 17 03:27:18 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2019 | ||
2020 | * global.c: Add support for flagging intrinsic/global | |
2021 | confusion via warnings. | |
2022 | * bad.def (FFEBAD_INTRINSIC_EXPIMP, | |
2023 | FFEBAD_INTRINSIC_GLOBAL): New diagnostics. | |
2024 | * expr.c (ffeexpr_token_funsubstr_): Ditto. | |
2025 | (ffeexpr_sym_lhs_call_): Ditto. | |
2026 | (ffeexpr_paren_rhs_let_): Ditto. | |
2027 | * stc.c (ffestc_R1208_item): Ditto. | |
2028 | ||
2029 | Wed Apr 16 22:40:56 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2030 | ||
2031 | * expr.c (ffeexpr_declare_parenthesized_): INCLUDE | |
2032 | context can't be an intrinsic invocation either. | |
2033 | ||
2034 | Fri Mar 28 10:43:28 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2035 | ||
2036 | * expr.c (ffeexpr_token_arguments_): Make sure top of | |
2037 | exprstack is operand before dereferencing operand field. | |
2038 | ||
2039 | * lex.c (ffelex_prepare_eos_): Fill up truncated | |
2040 | hollerith token, so crash on null ->text field doesn't | |
2041 | happen later. | |
2042 | ||
2043 | * stb.c (ffestb_R10014_): If NAMES isn't recognized (or | |
2044 | the recognized part is followed in the token by a | |
2045 | non-digit), don't try and collect digits, as there | |
2046 | might be more than FFEWHERE_indexMAX letters to skip | |
2047 | past to do so -- and the code is diagnosed anyway. | |
2048 | ||
2049 | Thu Mar 27 00:02:48 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2050 | ||
2051 | * com.c (ffecom_sym_transform_): Force local | |
2052 | adjustable array onto stack. | |
2053 | ||
2054 | * stc.c (ffestc_R547_item_object): Don't actually put | |
2055 | the symbol in COMMON if the symbol has already been | |
2056 | EQUIVALENCE'd to a different COMMON area. | |
2057 | ||
2058 | * equiv.c (ffeequiv_add): Don't actually do anything | |
2059 | if there's a disagreement over which COMMON area is | |
2060 | involved. | |
2061 | ||
2062 | Tue Mar 25 03:35:19 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2063 | ||
2064 | * com.c (ffecom_transform_common_): If no explicit init | |
2065 | of COMMON area, don't actually init it even though | |
2066 | storage area suggests it. | |
2067 | ||
2068 | Mon Mar 24 12:10:08 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2069 | ||
2070 | * lex.c (ffelex_image_char_): Avoid overflowing the | |
2071 | column counter itself, as well as the card image. | |
2072 | ||
2073 | * where.c (ffewhere_line_new): Cast ffelex_line_length() | |
2074 | to (size_t) so 255 doesn't overflow to 0! | |
2075 | ||
2076 | * stc.c (ffestc_labeldef_notloop_begin_): Don't gratuitously | |
2077 | terminate loop before processing statement, so block | |
2078 | doesn't disappear out from under EXIT/CYCLE processing. | |
2079 | (ffestc_labeldef_notloop_): Has old code from above | |
2080 | function, instead of just calling it. | |
2081 | ||
2082 | * expr.c (ffeexpr_cb_comma_i_4_): Don't skip over | |
2083 | arbitrary token (such as EOS). | |
2084 | ||
2085 | * com.c (ffecom_init_zero_): Handle RECORD_TYPE and | |
2086 | UNION_TYPE so -fno-zeros works with -femulated-complex. | |
2087 | ||
2088 | 1997-03-12 Dave Love <d.love@dl.ac.uk> | |
2089 | ||
2090 | * intrin.def: New intrinsics INT2, INT8, CPU_TIME. Fix AND, OR, | |
2091 | XOR. [Integrated by burley, AND/OR/XOR already fixed, INT8 | |
2092 | implementation changed/fixed.] | |
2093 | ||
2094 | Wed Mar 12 10:40:08 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2095 | ||
2096 | * Make-lang.in ($(srcdir)/f/intdoc.texi): Simplify rules | |
2097 | so building f/intdoc is not always necessary; remove | |
2098 | f/intdoc after running it if it is built. | |
2099 | ||
2100 | Tue Mar 11 23:42:00 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2101 | ||
2102 | * intrin.def (FFEINTRIN_impAND, FFEINTRIN_impOR, | |
2103 | FFEINTRIN_impXOR): Use the IAND, IOR, and IEOR implementations | |
2104 | of these, instead of crashing in ffecom_expr_intrinsic_ | |
2105 | or adding case labels there. | |
2106 | ||
2107 | Mon Mar 10 22:51:23 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2108 | ||
2109 | * intdoc.c: Fix so any C compiler can compile this. | |
2110 | ||
2111 | Fri Feb 28 13:16:50 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2112 | ||
2113 | * Version 0.5.20 released. | |
2114 | ||
2115 | Fri Feb 28 01:45:25 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2116 | ||
2117 | * Make-lang.in (RUNTIMESTAGESTUFF, LIBU77STAGESTUFF): | |
2118 | Move some files incorrectly in the former to the latter, | |
2119 | and add another file or two to the latter. | |
2120 | ||
2121 | New meanings for (KIND=n), and new denotations in the | |
2122 | little language describing intrinsics: | |
2123 | * com.c (ffecom_init_0): Assign new meanings. | |
2124 | * intdoc.c: Document new meanings. | |
2125 | Support the new denotations. | |
2126 | * intrin.c: Employ new meanings, mapping them to internal | |
2127 | values (which are the same as they ever were for now). | |
2128 | Support the new denotations. | |
2129 | * intrin.def: Switch DEFIMP table to the new denotations. | |
2130 | ||
2131 | * intrin.c (ffeintrin_check_): Fix bug that was leaving | |
2132 | LOC() and %LOC() returning INTEGER*4 on systems where | |
2133 | it should return INTEGER*8. | |
2134 | ||
2135 | * type.c: Canonicalize function definitions, for etags | |
2136 | and such. | |
2137 | ||
2138 | Wed Feb 26 20:43:03 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2139 | ||
2140 | * com.c (ffecom_init_0): Choose INTEGER(KIND=n) types, | |
2141 | where n is 2, 3, and 4, according to the new docs | |
2142 | instead of according to the old C correspondences | |
2143 | (which seem less useful at this point). | |
2144 | ||
2145 | * equiv.c (ffeequiv_destroy_): New function. | |
2146 | (ffeequiv_layout_local_): Use this new function | |
2147 | whenever the laying out of a local equivalence chain | |
2148 | is aborted for any reason. | |
2149 | Otherwise ensure that symbols no longer reference | |
2150 | the stale ffeequiv entries that result when they | |
2151 | are killed off in this procedure. | |
2152 | Also, the rooted symbol is one that has storage, | |
2153 | it really is irrelevant whether it has an equiv entry | |
2154 | at this point (though the code to remove the equiv | |
2155 | entry was put in at the end, just in case). | |
2156 | (ffeequiv_kill): When doing internal checks, make | |
2157 | sure the victim isn't named by any symbols it points | |
2158 | to. Not as complete a check as looking through the | |
2159 | entire symbol table (which does matter, since some | |
2160 | code in equiv.c used to remove symbols from the lists | |
2161 | for an ffeequiv victim but not remove that victim as the | |
2162 | symbol's equiv info), but this check did find some | |
2163 | real bugs in the code (that were fixed). | |
2164 | ||
2165 | Mon Feb 24 16:42:13 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2166 | ||
2167 | * com.c (ffecom_expr_intrinsic_): Fix a couple of | |
2168 | warnings about uninitialized variables. | |
2169 | * intrin.c (ffeintrin_check_): Ditto, but there were | |
2170 | a couple of _real_ uninitialized-variable _bugs_ here! | |
2171 | (ffeintrin_fulfill_specific): Ditto, no real bug here. | |
2172 | ||
2173 | Sun Feb 23 15:01:20 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2174 | ||
2175 | Clean up diagnostics (especially about intrinsics): | |
2176 | * bad.def (FFEBAD_UNIMPL_STMT): Remove. | |
2177 | (FFEBAD_INTRINSIC_*, FFEBAD_NEED_INTRINSIC): Clean these | |
2178 | up so they're friendlier. | |
2179 | (FFEBAD_INTRINSIC_CMPAMBIG): New. | |
2180 | * intrin.c (ffeintrin_fulfill_generic, | |
2181 | ffeintrin_fulfill_specific, ffeintrin_is_intrinsic): | |
2182 | Always choose | |
2183 | generic or specific name text (which is for doc purposes | |
2184 | anyway) over implementation name text (which is for | |
2185 | internal use). | |
2186 | * intrin.def: Use more descriptive name texts for generics | |
2187 | and specifics in cases where the names themselves are not | |
2188 | enough (e.g. IDATE, which has two forms). | |
2189 | ||
2190 | Fix some intrinsic mappings: | |
2191 | * intrin.def (FFEINTRIN_specIDINT, FFEINTRIN_specAND, | |
2192 | FFEINTRIN_specDFLOAT, FFEINTRIN_specDREAL, FFEINTRIN_specOR, | |
2193 | FFEINTRIN_specXOR): Now have their own implementations, | |
2194 | instead of borrowing from others. | |
2195 | (FFEINTRIN_specAJMAX0, FFEINTRIN_specAJMIN0, FFEINTRIN_specBJTEST, | |
2196 | FFEINTRIN_specDFLOTJ, FFEINTRIN_specFLOATJ, FFEINTRIN_specJIABS, | |
2197 | FFEINTRIN_specJIAND, FFEINTRIN_specJIBCLR, FFEINTRIN_specJIBITS, | |
2198 | FFEINTRIN_specJIBSET, FFEINTRIN_specJIDIM, FFEINTRIN_specJIDINT, | |
2199 | FFEINTRIN_specJIDNNT, FFEINTRIN_specJIEOR, FFEINTRIN_specJIFIX, | |
2200 | FFEINTRIN_specJINT, FFEINTRIN_specJIOR, FFEINTRIN_specJISHFT, | |
2201 | FFEINTRIN_specJISHFTC, FFEINTRIN_specJISIN, FFEINTRIN_specJMAX0, | |
2202 | FFEINTRIN_specJMAX1, FFEINTRIN_specJMIN0, FFEINTRIN_specJMIN1, | |
2203 | FFEINTRIN_specJMOD, FFEINTRIN_specJNINT, FFEINTRIN_specJNOT,): | |
2204 | Turn these implementations off, since it's not clear | |
2205 | just what types they expect in the context of portable Fortran. | |
2206 | (DFLOAT): Now in FVZ family, since f2c supports them | |
2207 | ||
2208 | Support intrinsic inquiry functions (BIT_SIZE, LEN): | |
2209 | * intrin.c: Allow `i' in <arg_extra>. | |
2210 | * intrin.def (FFEINTRIN_impBIT_SIZE, FFEINTRIN_impLEN): | |
2211 | Mark args with `i'. | |
2212 | ||
2213 | Sat Feb 22 13:34:09 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2214 | ||
2215 | Only warn, don't error, for reference to unimplemented | |
2216 | intrinsic: | |
2217 | * bad.def (FFEBAD_INTRINSIC_UNIMPLW): Warning version | |
2218 | of _UNIMPL. | |
2219 | * intrin.c (ffeintrin_is_intrinsic): Use new warning | |
2220 | version of _UNIMPL (FFEBAD_INTRINSIC_UNIMPLW). | |
2221 | ||
2222 | Complain about REAL(Z) and AIMAG(Z) (Z is DOUBLE COMPLEX): | |
2223 | * bad.def (FFEBAD_INTRINSIC_CMPAMBIG): New diagnostic. | |
2224 | * expr.c: Needed #include "intrin.h" anyway. | |
2225 | (ffeexpr_token_intrincheck_): New function handles delayed | |
2226 | diagnostic for "REAL(REAL(expr)" if next token isn't ")". | |
2227 | (ffeexpr_token_arguments_): Do most of the actual checking here. | |
2228 | * intrin.h, intrin.c (ffeintrin_fulfill_specific): New | |
2229 | argument, check_intrin, to tell caller that intrin is REAL(Z) | |
2230 | or AIMAG(Z). All callers updated, mostly to pass NULL in | |
2231 | for this. | |
2232 | (ffeintrin_check_): Also has new arg check_intrin for same | |
2233 | purpose. All callers updated the same way. | |
2234 | * intrin.def (FFEINTRIN_impAIMAG): Change return type | |
2235 | from "R0" to "RC", to accommodate f2c (and perhaps other | |
2236 | non-F90 F77 compilers). | |
2237 | * top.h, top.c: New option -fugly-complex. | |
2238 | ||
2239 | New GNU intrinsics REALPART, IMAGPART, and COMPLEX: | |
2240 | * com.c (ffecom_expr_intrinsic_): Implement impCOMPLEX | |
2241 | and impREALPART here. (specIMAGPART => specAIMAG.) | |
2242 | * intrin.def: Add the intrinsics here. | |
2243 | ||
2244 | Rename implementations of VXTIDATE and VXTTIME to IDATEVXT | |
2245 | and TIMEVXT, so they sort more consistently: | |
2246 | * com.c (ffecom_expr_intrinsic_): | |
2247 | * intrin.def: | |
2248 | ||
2249 | Delete intrinsic group `dcp', add `gnu', etc.: | |
2250 | * intrin.c (ffeintrin_state_family): FFEINTRIN_familyGNU | |
2251 | replaces FFEINTRIN_familyDCP, and gets state from `gnu' | |
2252 | group. | |
2253 | Get rid of FFEINTRIN_familyF2Z, nobody needs it. | |
2254 | Move FFEINTRIN_specDCMPLX from DCP family to FVZ family, | |
2255 | as f2c has it. | |
2256 | Move FFEINTRIN_specDFLOAT from F2C family to FVZ family. | |
2257 | (FFEINTRIN_specZABS, FFEINTRIN_specZCOS, FFEINTRIN_specZEXP, | |
2258 | FFEINTRIN_specZLOG, FFEINTRIN_specZSIN, FFEINTRIN_specZSQRT): | |
2259 | Move these from F2Z family to F2C family. | |
2260 | * intrin.h (FFEINTRIN_familyF2Z, FFEINTRIN_familyDCP): Remove. | |
2261 | (FFEINTRIN_familyGNU): Add. | |
2262 | * top.h, top.c: Replace `dcp' with `gnu'. | |
2263 | ||
2264 | * com.c (ffecom_expr_intrinsic_): Clean up by collecting | |
2265 | simple conversions into one nice, conceptual place. | |
2266 | Fix up some intrinsic subroutines (MVBITS, KILL, UMASK) to | |
2267 | properly push and pop call temps, to avoid wasting temp | |
2268 | registers. | |
2269 | ||
2270 | * g77.c (doit): Toon says variables should be defined | |
2271 | before being referenced. Spoilsport. | |
2272 | ||
2273 | * intrin.c (ffeintrin_check_): Now Dave's worried about | |
2274 | warnings about uninitialized variables. Okay, so for | |
2275 | basic return values 'g' and 's', they _were_ | |
2276 | uninitialized -- is determinism really _that_ useful? | |
2277 | ||
2278 | * intrin.def (FFEINTRIN_impFGETC): Fix STATUS argument | |
2279 | so that it is INTENT(OUT) instead of INTENT(IN). | |
2280 | ||
2281 | 1997-02-21 Dave Love <d.love@dl.ac.uk> | |
2282 | ||
2283 | * intrin.def, com.c: Support Sun-type `short' and `long' | |
2284 | intrinsics. Perhaps should also do Microcruft-style `int2'. | |
2285 | ||
2286 | Thu Feb 20 15:16:53 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2287 | ||
2288 | * com.c (ffecom_expr_intrinsic_): Clean up indentation. | |
2289 | Support SECONDSUBR intrinsic implementation. | |
2290 | Rename SECOND to SECONDFUNC for direct support via library. | |
2291 | ||
2292 | * g77.c: Fix to return proper status value to shell, | |
2293 | by obtaining it from processes it spawns. | |
2294 | ||
2295 | * intdoc.c: Fix minor typo. | |
2296 | ||
2297 | * intrin.def: Turn SECOND into generic that maps into | |
2298 | function and subroutine forms. | |
2299 | ||
2300 | * intrin.def: Make FLOAT and SNGL into specific intrinsics. | |
2301 | ||
2302 | * intrin.def, intrin.h: Change the way DEFGEN and DEFSPEC | |
2303 | macros work, to save on verbage. | |
2304 | ||
2305 | Mon Feb 17 02:08:04 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2306 | ||
2307 | New subsystem to automatically generate documentation | |
2308 | on intrinsics: | |
2309 | * Make-lang.in ($(srcdir)/f/g77.info, | |
2310 | $(srcdir)/f/g77.dvi): Move g77 doc rules around. | |
2311 | Add to g77 doc rules the new subsystem. | |
2312 | (f77.mostlyclean, f77.maintainer-clean): Also clean up | |
2313 | after new doc subsystem. | |
2314 | * intdoc.c, intdoc.h: New doc subsystem code. | |
2315 | * intrin.h [FFEINTRIN_DOC]: When 1, don't pull in | |
2316 | stuff not needed by doc subsystem. | |
2317 | ||
2318 | Improve on intrinsics mechanism to both be more | |
2319 | self-documenting and to catch more user errors: | |
2320 | * intrin.c (ffeintrin_check_): Recognize new arg-len | |
2321 | and arg-rank information, and check it. | |
2322 | Move goto and signal indicators to the basic type. | |
2323 | Permit reference to arbitrary argument number, not | |
2324 | just first argument (for BESJN and BESYN). | |
2325 | (ffeintrin_init_0): Check and accept new notations. | |
2326 | * intrin.c, intrin.def: Value in COL now identifies | |
2327 | arguments starting with number 0 being the first. | |
2328 | ||
2329 | Some minor intrinsics cleanups (resulting from doc work): | |
2330 | * com.c (ffecom_expr_intrinsic_): Implement FLUSH | |
2331 | directly once again, handle its optional argument, | |
2332 | so it need not be a generic (awkward to handle in docs). | |
2333 | * intrin.def (BESJ0, BESJ1, BESJN, BESY0, BESY1, BESYN, | |
2334 | CHDIR, CHMOD, CTIME, DBESJ0, DBESJ1, DBESJN, DBESY0, | |
2335 | DBESY1, DBESYN, DDIM, ETIME, FGETC, FNUM, FPUTC, FSTAT, | |
2336 | GERROR, GETCWD, GETGID, GETLOG, GETPID, GETUID, GMTIME, | |
2337 | HOSTNM, IDATE, IERRNO, IIDINT, IRAND, ISATTY, ITIME, JIDINT, | |
2338 | LNBLNK, LSTAT, LTIME, MCLOCK, PERROR, SRAND, SYMLNK, TTYNAM, | |
2339 | UMASK): Change capitalization of initcaps (official) name | |
2340 | to be consistent with Burley's somewhat arbitrary rules. | |
2341 | (BESJN, BESYN): These have return arguments of same type | |
2342 | as their _second_ argument. | |
2343 | (FLUSH): Now a specific, not generic, intrinsic, with one | |
2344 | optional argument. | |
2345 | (FLUSH1): Eliminated. | |
2346 | Add arg-len and arg-rank info to several intrinsics. | |
2347 | (ITIME): Change argument type from REAL to INTEGER. | |
2348 | ||
2349 | Tue Feb 11 14:04:42 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2350 | ||
2351 | * Make-lang.in (f771): Invocation of Makefile now done | |
2352 | with $(srcdir)=gcc to go along with $(VPATH)=gcc. | |
2353 | ($(srcdir)/f/runtime/configure, | |
2354 | $(srcdir)/f/runtime/libU77/configure): Break these out | |
2355 | so spurious triggers of this rule don't happen (as when | |
2356 | configure.in is more recent than libU77/configure). | |
2357 | (f77.rebuilt): Distinguish source versus build files, | |
2358 | so this target can be invoked from build directory and | |
2359 | still work. | |
2360 | * Makefile.in: This now expects $(srcdir) to be the gcc | |
2361 | source directory, not gcc/f, to agree with $(VPATH). | |
2362 | Accordingly, $(INCLUDES) has been fixed, various cruft | |
2363 | removed, the removal of f771 has been fixed to remove | |
2364 | the _real_ f771 (not the one in gcc's parent directory), | |
2365 | and so on. | |
2366 | ||
2367 | * lex.c: Part of ffelex_finish_statement_() now done | |
2368 | by new function ffelex_prepare_eos_(), so that, in one | |
2369 | popular case, the EOS can be prepared while the pointer | |
2370 | is at the end of the non-continued line instead of the | |
2371 | end of the line that marks no continuation. This improves | |
2372 | the appearance of diagnostics substantially. | |
2373 | ||
2374 | Mon Feb 10 12:44:06 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2375 | ||
2376 | * Make-lang.in: runtime Makefile's, and include/f2c.h, | |
2377 | also depend on f/runtime/configure and f/runtime/libU77/configure. | |
2378 | ||
2379 | Fix various libU77 routines: | |
2380 | * com-rt.def (FFECOM_gfrtCTIME, FFECOM_gfrtMCLOCK, | |
2381 | FFECOM_gfrtTIME): These now use INTEGER*8 for time values, | |
2382 | for compatibility with systems like Alpha. | |
2383 | (FFECOM_gfrtSYSTEM_CLOCK, FFECOM_gfrtTTYNAM): Delete incorrect | |
2384 | trailing underscore in routine names. | |
2385 | * intrin.c, intrin.def: Support INTEGER*8 return values and | |
2386 | arguments ('4'). Change FFEINTRIN_impCTIME, FFEINTRIN_impMCLOCK, | |
2387 | and FFEINTRIN_impTIME accordingly. | |
2388 | (ffeintrin_is_intrinsic): Don't give caller a clue about | |
2389 | form of intrinsic -- shouldn't be needed at this point. | |
2390 | ||
2391 | Cope with generic intrinsics that are subroutines and functions: | |
2392 | * com.c (ffecom_finish_symbol_transform_, ffecom_expr_transform_): | |
2393 | Don't transform an intrinsic that is not known to be a subroutine | |
2394 | or a function. (Maybe someday have to avoid transforming | |
2395 | any intrinsic with an undecided or unknown implementation.) | |
2396 | * expr.c (ffeexpr_declare_unadorned_, | |
2397 | ffeexpr_declare_parenthesized_): Ok to invoke generic | |
2398 | intrinsic that has at least one subroutine form as a | |
2399 | subroutine. | |
2400 | Ok to pass intrinsic as actual arg if it has a known specific | |
2401 | intrinsic form that is valid as actual arg. | |
2402 | (ffeexpr_declare_parenthesized_): An unknown kind of | |
2403 | intrinsic has a paren_type chosen based on context. | |
2404 | (ffeexpr_token_arguments_): Build funcref/subrref based | |
2405 | on context, not on kind of procedure being called. | |
2406 | * intrin.h, intrin.c (ffeintrin_is_intrinsic): Undo changes of | |
2407 | Tue Feb 4 23:12:04 1997 by me, change all callers to leave | |
2408 | intrinsics as FFEINFO_kindNONE at this point. (Some callers | |
2409 | also had unused variables deleted as a result.) | |
2410 | ||
2411 | Enable all intrinsic groups (especially f90 and vxt): | |
2412 | * target.h (FFETARGET_defaultSTATE_DCP, FFETARGET_defaultSTATE_F2C, | |
2413 | FFETARGET_defaultSTATE_F90, FFETARGET_defaultSTATE_MIL, | |
2414 | FFETARGET_defaultSTATE_UNIX, FFETARGET_defaultSTATE_VXT): | |
2415 | Delete these macros, let top.c set them directly. | |
2416 | * top.c (ffeintrinsic_state_dcp_, ffe_intrinsic_state_f2c_, | |
2417 | ffe_intrinsic_state_f90_, ffe_intrinsic_state_mil_, | |
2418 | ffe_intrinsic_state_unix_, ffe_intrinsic_state_vxt_): | |
2419 | Enable all these directly. | |
2420 | ||
2421 | Sat Feb 8 03:21:50 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2422 | ||
2423 | * g77.c: Incorporate recent changes to ../gcc.c. | |
2424 | For version magic (e.g. `g77 -v'), instead of compiling | |
2425 | /dev/null, write, compile, run, and then delete a small | |
2426 | program that prints the version numbers of the three | |
2427 | components of libf2c (libF77, libI77, and libU77), | |
2428 | so we get this info with bug reports. | |
2429 | Also, this change reduces the chances of accidentally | |
2430 | linking to an old (complex-alias-problem) libf2c. | |
2431 | Fix `-L' so the argument is expected in `-Larg'. | |
2432 | ||
2433 | * com.h (FFECOM_f2cLONGINT): For INTEGER*8 support in f2c.h, | |
2434 | dynamically determine proper type here, instead of | |
2435 | assuming `long long int' is correct. | |
2436 | ||
2437 | Tue Feb 4 23:12:04 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2438 | ||
2439 | Add libU77 library from Dave Love <d.love@dl.ac.uk>: | |
2440 | * Make-lang.in (f77-runtime): Depend on new Makefile. | |
2441 | (f/runtime/libU77/Makefile): New rule. | |
2442 | Also configure libU77. | |
2443 | ($(srcdir)/f/runtime/configure: Use Makefile.in, | |
2444 | so configuration doesn't have to have happened. | |
2445 | (f77.mostlyclean, f77.clean, f77.distclean, | |
2446 | f77.maintainer-clean): Some fixups here, but more work | |
2447 | needed. | |
2448 | (RUNTIMESTAGESTUFF): Add libU77's config.status. | |
2449 | (LIBU77STAGESTUFF, f77.stage1, f77.stage2, f77.stage3, | |
2450 | f77.stage4): New macro, appropriate uses added. | |
2451 | * com-rt.def: Add libU77 procedures. | |
2452 | * com.c (ffecom_f2c_ptr_to_integer_type_node, | |
2453 | ffecom_f2c_ptr_to_real_type_node): New type nodes. | |
2454 | (FFECOM_rttypeCHARACTER_): New type of run-time function. | |
2455 | (ffecom_char_args_): Handle CHARACTER*n intrinsics | |
2456 | where n != 1 here, instead of in ffecom_expr_intrinsic_. | |
2457 | (ffecom_expr_intrinsic_): New code to handle new | |
2458 | intrinsics. | |
2459 | In particular, change how FFEINTRIN_impFLUSH is handled. | |
2460 | (ffecom_make_gfrt_): Handle new type of run-time function. | |
2461 | (ffecom_init_0): Initialize new type nodes. | |
2462 | * config-lang.in: New libU77 directory. | |
2463 | * intrin.h, intrin.c (ffeintrin_is_intrinsic): Handle | |
2464 | potential generic for subroutine _and_ function | |
2465 | specifics via two new arguments. All callers changed. | |
2466 | Properly ignore deleted/disabled intrinsics in resolving | |
2467 | generics. | |
2468 | (ffeintrin_check_, ffeintrin_init_0): Handle CHARACTER intrinsics of (*) | |
2469 | length. | |
2470 | * intrin.def: Permission granted by FSF to place this in | |
2471 | public domain, which will allow it to serve as source | |
2472 | for both g77 program and its documentation. | |
2473 | Add libU77 intrinsics. | |
2474 | (FLUSH): Now a generic, not specific, intrinsic. | |
2475 | (DEFIMP): Now support return modifier for CHARACTER intrinsics. | |
2476 | ||
2477 | * com-rt.def (FFECOM_gfrtDIM, FFECOM_gfrtERF, | |
2478 | FFECOM_gfrtERFC, FFECOM_gfrtEXP, FFECOM_gfrtSIGN, | |
2479 | FFECOM_gfrtSIN, FFECOM_gfrtSINH, FFECOM_gfrtTAN, | |
2480 | FFECOM_gfrtTANH, FFECOM_gfrtPOW_RI): Change "&r" to "&f". | |
2481 | ||
2482 | Sat Feb 1 12:15:09 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2483 | ||
2484 | * Version 0.5.19.1 released. | |
2485 | ||
2486 | * com.c (ffecom_expr_, ffecom_expr_intrinsic_, | |
2487 | ffecom_tree_divide_): FFECOM_gfrtPOW_ZI, | |
2488 | FFECOM_gfrtCONJG, FFECOM_gfrtDCONJG, | |
2489 | FFECOM_gfrtCCOS, FFECOM_gfrtCDCOS, | |
2490 | FFECOM_gfrtCLOG, FFECOM_gfrtCDLOG, | |
2491 | FFECOM_gfrtCSIN, FFECOM_gfrtCDSIN, | |
2492 | FFECOM_gfrtCSQRT, FFECOM_gfrtCDSQRT, | |
2493 | FFECOM_gfrtDIV_CC, FFECOM_gfrtDIV_ZZ: These all require | |
2494 | result to _not_ overlap one or more inputs. | |
2495 | ||
2496 | Sat Feb 1 00:25:55 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2497 | ||
2498 | * com.c (ffecom_init_0): Do internal checks only if | |
2499 | -fset-g77-defaults not specified. | |
2500 | ||
2501 | Fix %LOC(), LOC() to return sufficiently wide type: | |
2502 | * com.h, com.c (ffecom_pointer_kind_, ffecom_label_kind_, | |
2503 | ffecom_pointer_kind(), ffecom_label_kind()): New globals | |
2504 | and accessor macros hold kind for integer pointers on target | |
2505 | machine. | |
2506 | (ffecom_init_0): Determine narrowest INTEGER type that | |
2507 | can hold a pointer (usually INTEGER*4 or INTEGER*8), | |
2508 | store it in ffecom_pointer_kind_, etc. | |
2509 | * expr.c (ffeexpr_cb_end_loc_): Use right type for %LOC(). | |
2510 | * intrin.c (ffeintrin_check_, ffeintrin_init_0): Support | |
2511 | new 'p' kind for type of intrinsic. | |
2512 | * intrin.def (FFEINTRIN_impLOC): Returns "Ip" instead of "I1", | |
2513 | so LOC() type is correct for target machine. | |
2514 | ||
2515 | Support -fugly-assign: | |
2516 | * lang-options.h, top.h, top.c (ffe_decode_option): | |
2517 | Accept -fugly-assign and -fno-ugly-assign. | |
2518 | * com.c (ffecom_expr_): Handle -fugly-assign. | |
2519 | * expr.c (ffeexpr_finished_): Check right type for ASSIGN | |
2520 | contexts. | |
2521 | ||
2522 | Fri Jan 31 14:30:00 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2523 | ||
2524 | Remove last vestiges of -fvxt-not-f90: | |
2525 | * stb.c (ffestb_R10012_, ffestb_R10014_, ffestb_V0201_): | |
2526 | top.c, top.h: | |
2527 | ||
2528 | Fri Jan 31 02:13:54 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2529 | ||
2530 | * top.c (ffe_decode_option): Warn if -fugly is specified, | |
2531 | it'll go away soon. | |
2532 | ||
2533 | * symbol.h: No need to #include "bad.h". | |
2534 | ||
2535 | Reorganize features from -fvxt-not-f90 to -fvxt: | |
2536 | * lang-options.h, top.h, top.c: | |
2537 | Accept -fvxt and -fno-vxt, but not -fvxt-not-f90 or -ff90-not-vxt. | |
2538 | Warn if the latter two are used. | |
2539 | * expr.c (ffeexpr_nil_rhs_): Double-quote means octal constant. | |
2540 | (ffeexpr_token_rhs_): Double-quote means octal constant. | |
2541 | * target.h (FFETARGET_defaultIS_VXT_NOT_90): Delete macro | |
2542 | definition, no longer needed. | |
2543 | ||
2544 | Make some -ff90 features the default: | |
2545 | * data.c (ffedata_value): DATA implies SAVE. | |
2546 | * src.h (ffesrc_is_name_noninit): Underscores always okay. | |
2547 | ||
2548 | Fix up some more #error directives by quoting their text: | |
2549 | * bld.c (ffebld_constant_is_zero): | |
2550 | * target.h: | |
2551 | ||
2552 | Sat Jan 18 18:22:09 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2553 | ||
2554 | * g77.c (lookup_option, main): Recognize `-Xlinker', | |
2555 | `-Wl,', `-l', `-L', `--library-directory', `-o', | |
2556 | `--output'. | |
2557 | (lookup_option): Don't depend on SWITCH_TAKES_ARG | |
2558 | being correct, it might or might not have `-x' in | |
2559 | it depending on host. | |
2560 | Return NULL argument if it would be an empty string. | |
2561 | (main): If no input files (by gcc.c's definition) | |
2562 | but `-o' or `--output' specified, produce diagnostic | |
2563 | to avoid overwriting output via gcc. | |
2564 | Recognize C++ `+e' options. | |
2565 | Treat -L as another non-magical option (like -B). | |
2566 | Don't append_arg `-x' twice. | |
2567 | ||
2568 | Fri Jan 10 23:36:00 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2569 | ||
2570 | * top.c [BUILT_FOR_270] (ffe_decode_option): Make | |
2571 | -fargument-noalias-global the default. | |
2572 | ||
2573 | Fri Jan 10 07:42:27 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2574 | ||
2575 | Enable inlining of previously-compiled program units: | |
2576 | * com.c (ffecom_do_entry_, ffecom_start_progunit_): | |
2577 | Register new public function in ffeglobal database. | |
2578 | (ffecom_sym_transform_): Any GLOBAL or potentially GLOBAL | |
2579 | symbol should be looked up in ffeglobal database and | |
2580 | that tree node used, if found. That way, gcc knows | |
2581 | the references are to those earlier definitions, so it | |
2582 | can emit shorter branches/calls, inline, etc. | |
2583 | (ffecom_transform_common_): Minor change for clarity. | |
2584 | * expr.c (ffeexpr_sym-lhs_call_, ffeexpr_sym_lhs_extfunc_, | |
2585 | ffeexpr_sym_rhs_actualarg_, ffeexpr_paren_rhs_let_, | |
2586 | ffeexpr_token_funsubstr_): Globalize symbol as needed. | |
2587 | * global.c (ffeglobal_promoted): New function to look up | |
2588 | existing local symbol in ffeglobal database. | |
2589 | * global.h: Declare new function. | |
2590 | * name.h (ffename_token): New macro, plus alphabetize. | |
2591 | * stc.c (ffestc_R1207_item): Globalize EXTERNAL symbol. | |
2592 | * stu.c (ffestu_sym_end_transition, ffestu_sym_exec_transition): | |
2593 | Globalize symbol as needed. | |
2594 | * symbol.h, symbol.c (ffesymbol_globalize): New function. | |
2595 | ||
2596 | Thu Jan 9 14:20:00 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2597 | ||
2598 | * ste.c (ffeste_R809): Produce a diagnostic for SELECT CASE | |
2599 | on CHARACTER type, instead of crashing. | |
2600 | ||
2601 | Thu Jan 9 00:52:45 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2602 | ||
2603 | * stc.c (ffestc_order_entry_, ffestc_order_format_, | |
2604 | ffestc_R1226): Allow ENTRY and FORMAT before IMPLICIT | |
2605 | NONE, by having them transition only to state 1 instead | |
2606 | of state 2 (which is disallowed by IMPLICIT NONE). | |
2607 | ||
2608 | Mon Jan 6 22:44:53 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2609 | ||
2610 | Fix AXP bug found by Rick Niles (961201-1.f): | |
2611 | * com.c (ffecom_init_0): Undo my 1996-05-14 change, as | |
2612 | it is incorrect and prevented easily finding this bug. | |
2613 | * target.h [__alpha__] (ffetargetReal1, ffetargetReal2): | |
2614 | Use int instead of long. | |
2615 | (ffetarget_cvt_r1_to_rv_, ffetarget_cvt_rv_to_r1_, | |
2616 | ffetarget_cvt_r2_to_rv_, ffetarget_cvt_rv_to_r2_): | |
2617 | New functions that intercede for callers of | |
2618 | REAL_VALUE_(TO|UNTO)_TARGET_(SINGLE|DOUBLE). | |
2619 | All callers changed, and damaging casts to (long *) removed. | |
2620 | ||
2621 | Sun Jan 5 03:26:11 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2622 | ||
2623 | * Make-lang.in (g77, g77-cross): Depend on both g77.c and | |
2624 | zzz.c, in $(srcdir)/f/. | |
2625 | ||
2626 | Better design for -fugly-assumed: | |
2627 | * stc.c (ffestc_R501_item, ffestc_R524_item, | |
2628 | ffestc_R547_item_object): Pass new is_ugly_assumed flag. | |
2629 | * stt.c, stt.h (ffestt_dimlist_as_expr, | |
2630 | ffestt_dimlist_type): New is_ugly_assumed flag now | |
2631 | controls whether "1" is treated as "*". | |
2632 | Don't treat "2-1" or other collapsed constants as "*". | |
2633 | ||
2634 | Sat Jan 4 15:26:22 1997 Craig Burley <burley@gnu.ai.mit.edu> | |
2635 | ||
2636 | * stb.c (ffestb_R10012_): Don't confirm on FORMAT(A,) | |
2637 | or even FORMAT(A,,B), as R1229 only warns about the | |
2638 | former currently, and this seems reasonable. | |
2639 | ||
2640 | Improvements to diagnostics: | |
2641 | * sta.c (ffesta_second_): Don't add any ffestb parsers | |
2642 | unless they're specifically called for. | |
2643 | Set up ffesta_tokens[0] before calling ffestc_exec_transition, | |
2644 | else stale info might get used. | |
2645 | (ffesta_save_): Do a better job picking which parser to run | |
2646 | after running all parsers with no confirmed possibles. | |
2647 | (FFESTA_maxPOSSIBLES_): Decrease from 100 now that so few | |
2648 | possibles are ever on the list at a given time. | |
2649 | (struct _ffesta_possible): Add named attribute. | |
2650 | (ffesta_add_possible_exec_, ffesta_add_possible_nonexec_): | |
2651 | Make these into macros that call a single function that now | |
2652 | sets the named attribute. | |
2653 | (ffesta_add_possible_unnamed_exec_, | |
2654 | ffeseta_add_possible_unnamed_nonexec_): New macros. | |
2655 | (ffesta_second_): Designate unnamed possibles as | |
2656 | appropriate. | |
2657 | * stb.c (ffestb_R1229, ffestb_R12291_): Use more general | |
2658 | diagnostic, so things like "POINTER (FOO, BAR)" are | |
2659 | diagnosed as unrecognized statements, not invalid statement | |
2660 | functions. | |
2661 | * stb.h, stb.c (ffestb_unimplemented): Remove function. | |
2662 | ||
2663 | 1996-12-30 Dave Love <d.love@dl.ac.uk> | |
2664 | ||
2665 | * com.c: #include libU77/config.h | |
2666 | (ffecom_f2c_ptr_to_integer_type_node, | |
2667 | ffecom_f2c_ptr_to_integer_type_node): New variables. | |
2668 | (ffecom_init_0): Use them. | |
2669 | (ffecom_expr_intrinsic_): Many news cases for libU77 intrinsics. | |
2670 | ||
2671 | * com-rt.def: New definitions for libU77. | |
2672 | * intrin.def: Likewise. Also correct ftell arg spec. | |
2673 | ||
2674 | * Makefile.in (f/runtime/libU77/config.h): New target for com.c | |
2675 | dependency. | |
2676 | * Make-lang.in (f771): Depend on f/runtime/Makefile for the above. | |
2677 | ||
2678 | Sat Dec 28 12:28:29 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2679 | ||
2680 | * stt.c (ffestt_dimlist_type): Treat ([...,]1) in dimlist | |
2681 | as ([...,]*) if -fugly-assumed, so assumed-size array | |
2682 | detected early enough. | |
2683 | ||
2684 | Thu Dec 19 14:01:57 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2685 | ||
2686 | * target.h (FFETARGET_REAL_VALUE_FROM_INT_): Conditionalize | |
2687 | definition on BUILT_FOR_280, not BUILT_WITH_280, since | |
2688 | the name of the macro was (properly) changed since 0.5.19. | |
2689 | ||
2690 | Fix warnings/errors resulting from ffetargetOffset becoming | |
2691 | `long long int' instead of `unsigned long' as of 0.5.19, | |
2692 | while ffebitCount remains `unsigned long': | |
2693 | * bld.c (ffebld_constantarray_dump): Avoid warnings by | |
2694 | using loop var of appropriate type, and using casts. | |
2695 | * com.c (ffecom_expr_): Use right type for loop var. | |
2696 | (ffecom_sym_transform_, ffecom_transform_equiv_): | |
2697 | Cast to right type in assertions. | |
2698 | * data.c (ffedata_gather_, ffedata_value_): Cast to right | |
2699 | type in assertions and comparisons. | |
2700 | ||
2701 | Wed Dec 18 12:07:11 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2702 | ||
2703 | Patch from Alexandre Oliva <oliva@dcc.unicamp.br>: | |
2704 | * Makefile.in (all.indirect): Don't pass -bbigtoc option | |
2705 | to GNU ld. | |
2706 | ||
2707 | Cope with new versions of gcc: | |
2708 | * com.h (BUILT_FOR_280): New macro. | |
2709 | * com.c (ffecom_ptr_to_expr): Conditionalize test of | |
2710 | OFFSET_REF. | |
2711 | (ffecom_build_complex_constant_): Conditionalize calling | |
2712 | sequence for build_complex. | |
2713 | ||
2714 | Sat Dec 7 07:15:17 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2715 | ||
2716 | * Version 0.5.19 released. | |
2717 | ||
2718 | Fri Dec 6 12:23:55 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2719 | ||
2720 | * g77.c: Default to assuming "f77" is in $LANGUAGES, since | |
2721 | the LANGUAGE_F77 macro isn't defined by anyone anymore (but | |
2722 | might as well leave the no-f77 code in just in case). | |
2723 | * Make-lang.in (g77, g77-cross): Don't define LANGUAGE_F77 | |
2724 | anymore. | |
2725 | ||
2726 | 1996-12-06 Dave Love <d.love@dl.ac.uk> | |
2727 | ||
2728 | * Make-lang.in (g77, g77-cross): Revert to building `g77' or not | |
2729 | conditional on `f77' in LANGUAGES. | |
2730 | ||
2731 | Wed Dec 4 13:08:44 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2732 | ||
2733 | * Make-lang.in (g77, g77-cross): No libs or lib dependencies | |
2734 | in case where "f77" is not in $LANGUAGES. | |
2735 | ||
2736 | * lex.c (ffelex_image_char_, ffelex_file_fixed, | |
2737 | ffelex_file_free): Fixes to properly handle lines with | |
2738 | null character, and too-long lines as well. | |
2739 | ||
2740 | * lex.c: Call ffebad_start_msg_lex instead of | |
2741 | ffebad_start_msg throughout. | |
2742 | ||
2743 | Sun Dec 1 21:19:55 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2744 | ||
2745 | Fix-up for 1996-11-25 changes: | |
2746 | * com.c (ffecom_member_phase2_): Subtract out 0 offset for | |
2747 | elegance and consistency with EQUIVALENCE aggregates. | |
2748 | (ffecom_sym_transform_): Ditto for LOCAL/COMMON, and | |
2749 | ensure we get the same parent storage area. | |
2750 | * data.c (ffedata_gather_, ffedata_value_): Subtract out | |
2751 | aggregate offset. | |
2752 | ||
2753 | Wed Nov 27 13:55:57 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2754 | ||
2755 | * proj.h: Quote the text of the #error message, to avoid | |
2756 | strange-looking diagnostics from non-gcc ANSI compilers. | |
2757 | ||
2758 | * top.c: Make -fno-debug-kludge the default. | |
2759 | ||
2760 | Mon Nov 25 20:13:45 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2761 | ||
2762 | Provide more info on EQUIVALENCE mismatches: | |
2763 | * bad.def (FFEBAD_EQUIV_MISMATCH): More detailed message. | |
2764 | * equiv.c (ffeequiv_layout_local_, ffeequiv_layout_cblock): | |
2765 | More details for FFEBAD_EQUIV_MISMATCH. | |
2766 | ||
2767 | Fix problem with EQUIVALENCE handling: | |
2768 | * equiv.c (ffeequiv_layout_local_): Redesign algorithm -- | |
2769 | old one was broken, resulting in rejection of good code. | |
2770 | (ffeequiv_offset_): Add argument, change callers. | |
2771 | Clean up the code, fix up the (probably unused) negative-value | |
2772 | case for SYMTER. | |
2773 | * com.c (ffecom_sym_transform_): For local EQUIVALENCE | |
2774 | member, subtract out aggregate offset (which is <= 0). | |
2775 | ||
2776 | Thu Nov 21 12:44:56 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2777 | ||
2778 | Change type of ffetargetOffset from `unsigned long' to `long long': | |
2779 | * bld.c (ffebld_constantarray_dump): Change printf formats. | |
2780 | * storag.c (ffestorag_dump): Ditto. | |
2781 | * symbol.c (ffesymbol_report): Ditto. | |
2782 | * target.h (ffetargetOffset_f): Ditto and change type itself. | |
2783 | ||
2784 | Handle situation where list of languages does not include f77: | |
2785 | * Make-lang.in: Define LANGUAGE_F77 to 1 only if `f77' is in | |
2786 | the $LANGUAGES macro for the build. | |
2787 | * g77.c: Compile to a (nearly) no-op program if LANGUAGE_F77 | |
2788 | is not defined to 1. | |
2789 | ||
2790 | Fixes to delay confirmation of READ, WRITE, and GOTO statements | |
2791 | so the corresponding assignments to same-named CHAR*(*) arrays | |
2792 | work: | |
2793 | * stb.c (ffestb_R90915_, ffestb_91014_): New functions. | |
2794 | (ffestb_goto3_, ffestb_goto5_): Move confirmation from 3 to 5 | |
2795 | for the OPEN_PAREN case. | |
2796 | (ffestb_R9091_, ffestb_R9094_, ffestb_R90913_, ffestb_R90914_, | |
2797 | ffestb_R91012_, ffestb_R91013_): Use new functions, and confirm | |
2798 | except for the OPEN_PAREN case. | |
2799 | ||
2800 | Fixes to not confirm declarations with an open paren where | |
2801 | an equal sign or other assignment-like token might be, so the | |
2802 | corresponding assignments to same-named CHAR*(*) arrays work: | |
2803 | (ffestb_decl_entsp_5_): Move assertion so we crash on that first, | |
2804 | if it turns out to be wrong, before the less-debuggable crash | |
2805 | on mistaken confirmation. | |
2806 | (ffestb_decl_entsp_6_, ffestb_decl_entsp_7_, ffestb_decl_entsp_8_): | |
2807 | Include OPEN_PAREN in list of assignment-only tokens. | |
2808 | ||
2809 | Fix more diagnosed-crash bugs: | |
2810 | * stu.c (ffestu_sym_end_transition): ANY-ize an adjustable array | |
2811 | with bad dimension expressions even if still stateUNCERTAIN. | |
2812 | (ffestu_symter_end_transition_, ffestu_symter_exec_transition_): | |
2813 | Return TRUE for opANY as well. | |
2814 | For code elegance, move opSYMTER case into first switch. | |
2815 | ||
2816 | 1996-11-17 Dave Love <d.love@dl.ac.uk> | |
2817 | ||
2818 | * lex.c: Fix last change. | |
2819 | ||
2820 | 1996-11-14 Dave Love <d.love@dl.ac.uk> | |
2821 | ||
2822 | * Make-lang.in, config-lang.in: Remove the (broken) libU77 stuff, | |
2823 | pending 0.5.20. | |
2824 | ||
2825 | Thu Nov 14 15:40:59 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2826 | ||
2827 | * bad.def (FFEBAD_UNIMPL_STMT): Explain that invalid | |
2828 | intrinsic references can trigger this message, too. | |
2829 | ||
2830 | 1996-11-12 Dave Love <d.love@dl.ac.uk> | |
2831 | ||
2832 | * lex.c: Declare dwarfout routines. | |
2833 | ||
2834 | * config-lang.in: Sink grep o/p. | |
2835 | ||
2836 | Mon Nov 11 14:21:13 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2837 | ||
2838 | * g77.c (main): Might as well print version number | |
2839 | for --verbose as well. | |
2840 | ||
2841 | Thu Nov 7 18:41:41 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2842 | ||
2843 | * expr.c, lang-options.h, target.h, top.c, top.h: Split out | |
2844 | remaining -fugly stuff into -fugly-logint and -fugly-comma, | |
2845 | leaving -fugly as simply a `macro' that expands into other | |
2846 | options, and eliminate defaults for some of the ugly stuff | |
2847 | in target.h. | |
2848 | ||
2849 | * Make-lang.in (gcc-cross): Compile zzz.c, not version.o (!), | |
2850 | in to get version info for this target. | |
2851 | ||
2852 | * config-lang.in: Test for GBE patch application based | |
2853 | on whether 2.6.x or 2.7.x GBE is detected. | |
2854 | ||
2855 | Wed Nov 6 14:19:45 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2856 | ||
2857 | * Make-lang.in (g77): Compile zzz.c in to get version info. | |
2858 | * g77.c: Add support for --help and --version. | |
2859 | ||
2860 | * g77.c (lookup_option): Short-circuit long-winded tests | |
2861 | when second char is not hyphen, just to save a spot of time. | |
2862 | ||
2863 | Sat Nov 2 13:50:31 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2864 | ||
2865 | * intrin.def: Add FTELL and FSEEK intrinsics, plus new | |
2866 | `g' codes for alternate-return (GOTO) arguments. | |
2867 | * intrin.c (ffeintrin_check_): Support `g' codes. | |
2868 | * com-rt.def: Add ftell_() and fseek_() to database. | |
2869 | * com.c (ffecom_expr_intrinsic_): Ditto. Also, let each | |
2870 | subroutine intrinsic decide for itself what to do with | |
2871 | tree_type, the default being NULL_TREE once again (so | |
2872 | ffecom_call_ doesn't think it's supposed to cast the | |
2873 | function call to the type in the fall-through case). | |
2874 | ||
2875 | * ste.c (ffeste_R909_finish): Don't special-case list-directed | |
2876 | I/O, now that libf2c can return non-zero status codes. | |
2877 | (ffeste_R910_finish): Ditto. | |
2878 | (ffeste_io_call_): Simplify logic. | |
2879 | (ffeste_io_impdo_): | |
2880 | (ffeste_subr_beru_): | |
2881 | (ffeste_R904): | |
2882 | (ffeste_R907): | |
2883 | (ffeste_R909_start): | |
2884 | (ffeste_R909_item): | |
2885 | (ffeste_R909_finish): | |
2886 | (ffeste_R910_start): | |
2887 | (ffeste_R910_item): | |
2888 | (ffeste_R910_finish): | |
2889 | (ffeste_R911_start): | |
2890 | (ffeste_R923A): Ditto all the above. | |
2891 | ||
2892 | Thu Oct 31 20:56:28 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2893 | ||
2894 | * config-lang.in, Make-lang.in: Rename flag file | |
2895 | build-u77 to build-libu77, for consistency with | |
2896 | install-libf2c and such. | |
2897 | ||
2898 | * config-lang.in: Don't complain about failure to patch | |
2899 | if pre-2.7.0 gcc is involved (since our patch for that | |
2900 | doesn't add support for tooning). | |
2901 | ||
2902 | Sat Oct 26 05:56:51 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2903 | ||
2904 | * bad.def (FFEBAD_TYPELESS_TOO_LARGE): Remove this | |
2905 | unused and redundant diagnostic. | |
2906 | ||
2907 | Sat Oct 26 00:45:42 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2908 | ||
2909 | * target.c (ffetarget_integerhex): Fix dumb bug. | |
2910 | ||
2911 | 1996-10-20 Dave Love <d.love@dl.ac.uk> | |
2912 | ||
2913 | * gbe/2.7.2.1.diff: New file. | |
2914 | ||
2915 | * Makefile.in (F771_LDFLAGS): Add -bbigtoc for AIX4.1 up, suggested by | |
2916 | endo@material.tohoku.ac.jp [among others!]. | |
2917 | ||
2918 | Sat Oct 19 03:11:14 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2919 | ||
2920 | * bad.def, bld.c, bld.h, expr.c, lang-options.h, target.c, | |
2921 | target.h, top.c, top.h (ffebld_constant_new_integerbinary, | |
2922 | ffebld_constant_new_integerhex, ffebld_constant_new_integeroctal, | |
2923 | ffeexpr_token_name_apos_name_, ffetarget_integerbinary, | |
2924 | ffetarget_integerhex, ffetarget_integeroctal): Support | |
2925 | new -fno-typeless-boz option with new functions, mods to | |
2926 | existing octal-handling functions, new macros, new error | |
2927 | messages, and so on. | |
2928 | ||
2929 | * com.c, lang-options.h, top.c, top.h (ffecom_notify_primary_entry): | |
2930 | Print program unit name on stderr if -fno-silent (new option). | |
2931 | ||
2932 | * lang-options.h, top.c, top.h, stt.c (ffestt_dimlist_as_expr): | |
2933 | Treat ([...,]1) in dimlist as ([...,]*) if -fugly-assumed | |
2934 | (new option). | |
2935 | ||
2936 | * lang-options.h: Comment out options duplicated in gcc/toplev.c, | |
2937 | because, somehow, having them commented in and building on my | |
2938 | DEC Alpha results in a cc1 that always segfaults, and gdb that | |
2939 | also segfaults whenever it debugs it up to init_lex() calling | |
2940 | xmalloc() or so. | |
2941 | ||
2942 | Thu Oct 17 00:39:27 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2943 | ||
2944 | * stb.c (ffestb_R10013_): Don't change meaning of .sign until | |
2945 | after previous meaning/value used to set sign of value | |
2946 | (960507-1.f). | |
2947 | ||
2948 | Sun Oct 13 22:15:23 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2949 | ||
2950 | * top.c (ffe_decode_option): Don't set back-end flags | |
2951 | that are nonexistent prior to gcc 2.7.0. | |
2952 | ||
2953 | Sun Oct 13 12:48:45 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2954 | ||
2955 | * com.c (convert): Don't convert emulated complex expr to | |
2956 | real (via REALPART_EXPR) if the target type is (emulated) | |
2957 | complex. | |
2958 | ||
2959 | Wed Oct 2 21:57:12 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2960 | ||
2961 | * com.c (ffecom_debug_kludge_): Set DECL_IN_SYSTEM_HEADER so | |
2962 | -Wunused doesn't complain about these manufactured decls. | |
2963 | (ffecom_expr_): Ditto, for original (non-ASSIGN'ed) variable. | |
2964 | (ffecom_transform_equiv_): Clear DECL_IGNORED_P for aggregate | |
2965 | area so it shows up as a debug-accessible symbol. | |
2966 | (pushdecl): Default for "invented" identifiers (a g77-specific | |
2967 | concept for now) is that they are artificial, in system header, | |
2968 | ignored for debugging purposes, used, and (for types) suppressed. | |
2969 | This ought to be overkill. | |
2970 | ||
2971 | Fri Sep 27 23:13:07 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2972 | ||
2973 | * ste.c (ffeste_begin_iterdo_, ffeste_end_iterdo_): Support | |
2974 | one-trip DO loops (F66-style). | |
2975 | * lang-options.h, top.c, top.h (-fonetrip): New option. | |
2976 | ||
2977 | Thu Sep 26 00:18:40 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
2978 | ||
2979 | * com.c (ffecom_debug_kludge_): New function. | |
2980 | (ffecom_sym_transform_): Use new function for COMMON and EQUIVALENCE | |
2981 | members. | |
2982 | ||
2983 | * lang-options.h, top.c, top.h (-fno-debug-kludge): | |
2984 | New option. | |
e84aaeeb | 2985 | |
5ff904cd JL |
2986 | 1996-09-24 Dave Love <d.love@dl.ac.uk> |
2987 | ||
2988 | * Make-lang.in (include/f2c.h): | |
2989 | Remove dependencies on xmake_file and tmake_file. | |
2990 | They expand inconsistently in 2.8 c.f. 2.7; $(GCC_PARTS) depends on | |
2991 | them anyhow. | |
2992 | ||
2993 | 1996-09-22 Dave Love <d.love@dl.ac.uk> | |
2994 | ||
2995 | * config-lang.in: Add --enable-libu77 option handling. | |
2996 | ||
2997 | * Make-lang.in: | |
2998 | Conditionally add --enable-libu77 when running runtime configure. | |
2999 | Define LIBU77STAGESTUFF and use it in relevant rules. | |
3000 | ||
3001 | 1996-08-21 Dave Love <d.love@dl.ac.uk> | |
3002 | ||
3003 | * Make-lang.in (f77-runtime): | |
3004 | `stmp-hdrs' should have been `stmp-headers'. | |
3005 | ||
3006 | 1996-08-20 Dave Love <d.love@dl.ac.uk> | |
3007 | ||
3008 | * Make-lang.in (f77-runtime): | |
3009 | Depend on stmp-hdrs, not stmp-int-hdrs, since libF77 | |
3010 | needs float.h. | |
3011 | ||
3012 | Sat Jun 22 18:17:11 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3013 | ||
3014 | * com.c (ffecom_tree_divide_): Fix RECORD_TYPE case to | |
3015 | look at type of first field, properly, to determine | |
3016 | whether to call c_div or z_div. | |
3017 | ||
3018 | Tue Jun 4 04:27:18 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3019 | ||
3020 | * com.c (ffecom_build_complex_constant_): Explicitly specify | |
3021 | TREE_PURPOSE. | |
3022 | (ffecom_expr_): Fix thinko. | |
3023 | (ffecom_2): For COMPLEX_EXPR, explicitly specify TREE_PURPOSE. | |
3024 | ||
3025 | Mon May 27 16:23:43 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3026 | ||
3027 | Changes to optionally avoid gcc's back-end complex support: | |
3028 | * com.c (ffecom_stabilize_aggregate_): New function. | |
3029 | (ffecom_convert_to_complex_): New function. | |
3030 | (ffecom_make_complex_type_): New function. | |
3031 | (ffecom_build_complex_constant_): New function. | |
3032 | (ffecom_expr_): For opCONVERT of non-COMPLEX to COMPLEX, | |
3033 | don't bother explicitly converting to the subtype first, | |
3034 | because gcc does that anyway, and more code would have | |
3035 | to be added to find the subtype for the emulated-complex | |
3036 | case. | |
3037 | (ffecom_f2c_make_type_): Use ffecom_make_complex_type_ | |
3038 | instead of make_node etc. to make a complex type. | |
3039 | (ffecom_1, ffecom_2): Translate operations on COMPLEX operands | |
3040 | to appropriate operations when emulating complex. | |
3041 | (ffecom_constantunion): Use ffecom_build_complex_constant_ | |
3042 | instead of build_complex to build a complex constant. | |
3043 | (ffecom_init_0): Change point at which types are laid out | |
3044 | for improved consistency. | |
3045 | Use ffecom_make_complex_type_ instead of make_node etc. | |
3046 | to make a complex type. | |
3047 | Always calculate storage sizes from TYPE_SIZE, never TYPE_PRECISION. | |
3048 | (convert): Use e, not expr, since we've copied into that anyway. | |
3049 | For RECORD_TYPE cases, do emulated-complex conversions. | |
3050 | (ffecom_f2c_set_lio_code_): Always calculate storage sizes | |
3051 | from TYPE_SIZE, never TYPE_PRECISION. | |
3052 | (ffecom_tree_divide_): Allow RECORD_TYPE to also be handled | |
3053 | by run-time library. | |
3054 | (ffecom_expr_intrinsic_): Handle possible RECORD_TYPE as argument | |
3055 | to AIMAG intrinsic. | |
3056 | ||
3057 | * top.h, top.c, lang-options.h: Support new -f(no-)emulate-complex option. | |
3058 | ||
3059 | * com.c (ffecom_sym_transform_): Clarify and fix typos in comments. | |
3060 | ||
3061 | Mon May 20 02:06:27 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3062 | ||
3063 | * target.h: Use new REAL_VALUE_UNTO_TARGET_* macros instead | |
3064 | of REAL_VALUE_FROM_TARGET_DOUBLE and _SINGLE. | |
3065 | Explicitly use long instead of HOST_WIDE_INT for emulation | |
3066 | of ffetargetReal1 and ffetargetReal2. | |
3067 | ||
3068 | 1996-05-20 Dave Love <d.love@dl.ac.uk> | |
3069 | ||
3070 | * config-lang.in: | |
3071 | Test for patch being applied with flag_move_all_movables in toplev.c. | |
3072 | ||
3073 | * install.texi (Patching GNU Fortran): | |
3074 | Mention overriding X_CFLAGS rather than | |
3075 | editing proj.h on SunOS4. | |
3076 | ||
3077 | * Make-lang.in (F77_FLAGS_TO_PASS): | |
3078 | Add X_CFLAGS (convenient for SunOS4 kluge, in | |
3079 | particular). | |
3080 | (f77.{,mostly,dist}clean): Reorder things, in particular not to delete | |
3081 | Makefiles too early. | |
3082 | ||
3083 | * g77.c (DEFAULT_SWITCH_TAKES_ARG): Define a la gcc.c in the | |
3084 | current GCC snapshot. | |
3085 | ||
3086 | Tue May 14 00:24:07 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3087 | ||
3088 | Changes for DEC Alpha AXP support: | |
3089 | * com.c (ffecom_init_0): REAL_ARITHMETIC means internal | |
3090 | REAL/DOUBLE PRECISION might well have a different size | |
3091 | than the compiled type, so don't crash if this is the | |
3092 | case. | |
3093 | * target.h: Use `int' for ffetargetInteger1, | |
3094 | ffetargetLogical1, and magical tests. Set _f format | |
3095 | strings accordingly. | |
3096 | ||
3097 | Tue Apr 16 14:08:28 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3098 | ||
3099 | * top.c (ffe_decode_option): -Wall no longer implies | |
3100 | -Wsurprising. | |
3101 | ||
3102 | Sat Apr 13 14:50:06 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3103 | ||
3104 | * com.c (ffecom_char_args_): If item is error_mark_node, | |
3105 | set *length that way, too. | |
3106 | ||
3107 | * com.c (ffecom_expr_power_integer_): If either operand | |
3108 | is error_mark_node, return that. | |
3109 | ||
3110 | * com.c (ffecom_intrinsic_len_): If item is error_mark_node, | |
3111 | return that for length. | |
3112 | ||
3113 | * expr.c (ffeexpr_declare_unadorned_, | |
3114 | ffeexpr_declare_parenthesized_): Instead of crashing | |
3115 | on unexpected contexts, produce a diagnostic. | |
3116 | ||
3117 | * intrin.c (ffeintrin_check_), intrin.def (impSIGNAL): | |
3118 | Allow procedure as second arg to SIGNAL intrinsic. | |
3119 | ||
3120 | * stu.c (ffestu_symter_end_transition_): New function. | |
3121 | (ffestu_symter_exec_transition_): Return bool arg. | |
3122 | Always transition symbol (don't inhibit when !whereNONE). | |
3123 | (ffestu_sym_end_transition): If DUMMY/LOCAL arg has any | |
3124 | opANY exprs in its dimlist, diagnose it so it doesn't | |
3125 | make it through to later stages that try to deal with | |
3126 | dimlist stuff. | |
3127 | (ffestu_sym_exec_transition): If sym has any opANY exprs | |
3128 | in its dimlist, diagnose it so it becomes opANY itself. | |
3129 | ||
3130 | * symbol.c (ffesymbol_error): If token arg is NULL, | |
3131 | just ANY-ize the symbol -- don't produce diagnostic. | |
3132 | ||
3133 | Mon Apr 1 10:14:02 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3134 | ||
3135 | * Version 0.5.18 released. | |
3136 | ||
3137 | Mon Mar 25 20:52:24 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3138 | ||
3139 | * com.c (ffecom_expr_power_integer_): Don't generate code | |
3140 | that compares COMPLEX (or, as it happens, REAL) via "LT_EXPR", | |
3141 | since the back end crashes on that. (This code would never | |
3142 | be executed anyway, but the test that avoids it has now been | |
3143 | translated to control whether the code gets generated at all.) | |
3144 | Fixes 960323-3.f. | |
3145 | ||
3146 | * com.c (ffecom_type_localvar_): Handle variable-sized | |
3147 | dimension bounds expressions here, so they get calculated | |
3148 | and saved on procedure entry. Fixes 960323-4.f. | |
3149 | ||
3150 | * com.c (ffecom_notify_init_symbol): Symbol has no init | |
3151 | info at all if only zeros have been used to initialize it. | |
3152 | Fixes 960324-0.f. | |
3153 | ||
3154 | * expr.c, expr.h (ffeexpr_type_combine): Renamed from | |
3155 | ffeexpr_type_combine_ and now a public procedure; last arg now | |
3156 | a token, instead of an internal structure used to extract a token. | |
3157 | Now allows the outputs to be aliased with the inputs. | |
3158 | Now allows a NULL token to mean "don't report error". | |
3159 | (ffeexpr_reduced_bool2_, ffeexpr_reduced_eqop2_, | |
3160 | ffeexpr_reduced_math2_, ffeexpr_reduced_power_, | |
3161 | ffeexpr_reduced_relop2_): Handle new calling sequence for | |
3162 | ffeexpr_type_combine. | |
3163 | * (ffeexpr_convert): Don't put an opCONVERT node | |
3164 | in just because the size is unknown; all downstream code | |
3165 | should be able to deal without it being there anyway, and | |
3166 | getting rid of it allows new intrinsic code to more easily | |
3167 | combine types and such without generating bad code. | |
3168 | * info.c, info.h (ffeinfo_kindtype_max): Rewrite to do | |
3169 | proper comparison of size of types, not just comparison | |
3170 | of their internal kind numbers (so I2.eq.I1 doesn't promote | |
3171 | I1 to I2, rather the other way around). | |
3172 | * intrin.c (ffeintrin_check_): Combine types of arguments | |
3173 | in COL a la expression handling, for greater flexibility | |
3174 | and permissiveness (though, someday, -fpedantic should | |
3175 | report use of this kind of thing). | |
3176 | Make sure Hollerith/typeless where CHARACTER expected is | |
3177 | rejected. This all fixes 960323-2.f. | |
3178 | ||
3179 | * ste.c (ffeste_begin_iterdo_): Fix some more type conversions | |
3180 | so INTEGER*2-laden DO loops don't crash at compile time on | |
3181 | certain machines. Believed to fix 960323-1.f. | |
3182 | ||
3183 | * stu.c (ffestu_sym_end_transition): Certainly reject | |
3184 | whereDUMMY not in any dummy list, whether stateUNCERTAIN | |
3185 | or stateUNDERSTOOD. Fixes 960323-0.f. | |
3186 | ||
3187 | Tue Mar 19 13:12:40 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3188 | ||
3189 | * data.c (ffedata_value): Fix crash on opANY, and simplify | |
3190 | the code at the same time. | |
3191 | ||
3192 | * Make-lang.in (f77-runtime): Also depends on lib[FI]77/Makefile... | |
3193 | (include/f2c.h...): ...which in turn depend on */Makefile.in. | |
3194 | (f77.rebuilt): Rebuild runtime stuff too. | |
3195 | ||
3196 | * intrin.c (ffeintrin_check_): Accommodate TYPELESS/HOLLERITH | |
3197 | types, convert args as necessary, etc. | |
3198 | ||
3199 | * expr.c (ffeexpr_convert): Fix test for TYPELESS/HOLLERITH | |
3200 | to obey the docs; crash if no source token when error. | |
3201 | (ffeexpr_collapse_convert): Crash if no token when error. | |
3202 | ||
3203 | Mon Mar 18 15:51:30 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3204 | ||
3205 | * com.c (ffecom_init_zero_): Renamed from | |
3206 | ffecom_init_local_zero_; now handles top-level | |
3207 | (COMMON) initializations too. | |
3208 | ||
3209 | * bld.c (ffebld_constant_is_zero): | |
3210 | * com.c (ffecom_symbol_transform_, ffecom_sym_transform_assign_, | |
3211 | ffecom_transform_common_, ffecom_transform_equiv_): | |
3212 | * data.c: | |
3213 | * equiv.c: | |
3214 | * equiv.h: | |
3215 | * lang-options.h: | |
3216 | * stc.c: | |
3217 | * storag.c: | |
3218 | * storag.h: | |
3219 | * symbol.c: | |
3220 | * symbol.h: | |
3221 | * target.c: | |
3222 | * target.h: | |
3223 | * top.c: | |
3224 | * top.h: All of this is mostly housekeeping-type changes | |
3225 | to support -f(no-)zeros, i.e. not always stuff zero | |
3226 | values into the initializer fields of symbol/storage objects, | |
3227 | but still track that they have been given initial values. | |
3228 | ||
3229 | * bad.def: Fix wording for DATA-related diagnostics. | |
3230 | ||
3231 | * com.c (ffecom_sym_transform_assign_): Don't check | |
3232 | any EQUIVALENCE stuff for local ASSIGN, the check was | |
3233 | bad (crashing), and it's not necessary, anyway. | |
3234 | ||
3235 | * com.c (ffecom_expr_intrinsic_): For MAX and MIN, | |
3236 | ignore null arguments as far arg[123], and fix handling | |
3237 | of ANY arguments. (New intrinsic support now allows | |
3238 | spurious trailing null arguments.) | |
3239 | ||
3240 | * com.c (ffecom_init_0): Add HOLLERITH (unsigned) | |
3241 | equivalents for INTEGER*2, *4, and *8, so shift intrinsics | |
3242 | and other things that need unsigned versions of signed | |
3243 | types work. | |
3244 | ||
3245 | Sat Mar 16 12:11:40 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3246 | ||
3247 | * storag.c (ffestorag_exec_layout): Treat adjustable | |
3248 | local array like dummy -- don't create storage object. | |
3249 | * com.c (ffecom_sym_transform_): Allow for NULL storage | |
3250 | object in LOCAL case (adjustable array). | |
3251 | ||
3252 | Fri Mar 15 13:09:41 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3253 | ||
3254 | * com.c (ffecom_sym_transform_): Allow local symbols | |
3255 | with nonconstant sizes (adjustable local arrays). | |
3256 | (ffecom_type_localvar_): Allow dimensions with nonconstant | |
3257 | component (adjustable local arrays). | |
3258 | * expr.c: Various minor changes to handle adjustable | |
3259 | local arrays (a new case of stateUNCERTAIN). | |
3260 | * stu.c (ffestu_sym_end_transition, | |
3261 | ffestu_sym_exec_transition): Ditto. | |
3262 | * symbol.def: Update docs to reflect these changes. | |
3263 | ||
3264 | * com.c (ffecom_expr_): Reduce space/time needed for | |
3265 | opACCTER case by handling it here instead of converting | |
3266 | it to opARRTER earlier on. | |
3267 | (ffecom_notify_init_storage): Don't convert ACCTER to ARRTER. | |
3268 | (ffecom_notify_init_symbol): Ditto. | |
3269 | ||
3270 | * com.c (ffecom_init_0): Crash and burn if any of the types' | |
3271 | sizes, according to the GBE, disagrees with the sizes of | |
3272 | the FFE's internal implementation. This might catch | |
3273 | Alpha/SGI bugs earlier. | |
3274 | ||
3275 | Fri Mar 15 01:09:41 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3276 | ||
3277 | * com-rt.def, com.c, com.h: Changes for rewrite of intrinsic | |
3278 | handling. | |
3279 | * com.c (ffecom_arglist_expr_): New function. | |
3280 | (ffecom_widest_expr_type_): New function. | |
3281 | (ffecom_expr_intrinsic_): Reorganize, some rewriting. | |
3282 | (ffecom_f2c_make_type_): Layout complex types. | |
3283 | (ffecom_gfrt_args_): New function. | |
3284 | (ffecom_list_expr): Trivial change for consistency. | |
3285 | ||
3286 | * expr.c (ffeexpr_token_name_rhs_): Go back to getting | |
3287 | type from specific, not implementation, info. | |
3288 | (ffeexpr_token_funsubstr_): Set intrinsic implementation too! | |
3289 | * intrin.c: Major rewrite of most portions. | |
3290 | * intrin.def: Major rearchitecting of tables. | |
3291 | * intrin.h (ffeintrin_basictype, ffeintrin_kindtype): | |
3292 | Now (once again) take ffeintrinSpec as arg, not ffeintrinImp; | |
3293 | for now, these return NONE, since they're not really needed | |
3294 | and adding the necessary info to the tables is not trivial. | |
3295 | (ffeintrin_codegen_imp): New function. | |
3296 | * stc.c (ffestc_R1208_item): Change way ffeintrin funcs called, | |
3297 | back to original per above; but comment out the code anyway. | |
3298 | ||
3299 | * intrin.c (ffe_init_0): Do internal checks only if | |
3300 | -fset-g77-defaults not specified. | |
3301 | ||
3302 | * lang-options.h: Add -fset-g77-defaults option. | |
3303 | * lang-specs.h: Always pass -fset-g77-defaults. | |
3304 | * top.c, top.h: New option. | |
3305 | ||
3306 | Sat Mar 9 17:49:50 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3307 | ||
3308 | * Make-lang.in (stmp-int-hdrs): Use --no-validate when | |
3309 | generating the f77.rebuilt files (BUGS, INSTALL, NEWS) | |
3310 | so cross-references can work properly in g77.info | |
3311 | without a lot of hassle. Users can probably deal with | |
3312 | the way they end up looking in the f77.rebuilt files. | |
3313 | ||
3314 | * bld.c (ffebld_constant_new_integer4_val): INTEGER*8 | |
3315 | support -- new function. | |
3316 | (ffebld_constant_new_logical4_val): New function. | |
3317 | * com.c (ffecom_f2c_longint_type_node): New type. | |
3318 | (FFECOM_rttypeLONGINT_): New return type code. | |
3319 | (ffecom_expr_): Add code to invoke pow_qq instead | |
3320 | of pow_ii for INTEGER4 (INTEGER*8) case. | |
3321 | If ffecom_expr_power_integer_ returns NULL_TREE, just do | |
3322 | the usual work. | |
3323 | (ffecom_make_gfrt_): Handle new type. | |
3324 | (ffecom_expr_power_integer_): Let caller do the work if in | |
3325 | dummy-transforming case, since | |
3326 | caller now knows about INTEGER*8 and such, by returning | |
3327 | NULL_TREE. | |
3328 | * expr.c (ffeexpr_reduced_power_): Complain about non-INTEGER | |
3329 | raised to INTEGER4 (INTEGER*8) power. | |
3330 | ||
3331 | * target.c (ffetarget_power_integerdefault_integerdefault): | |
3332 | Fix any**negative. | |
3333 | * com.c (ffecom_expr_power_integer_): Fix (-1)**(-8) and similar | |
3334 | to ABS() the integral result if the exponent is negative | |
3335 | and even. | |
3336 | ||
3337 | * ste.c (ffeste_begin_iterdo_): Clean up a type ref. | |
3338 | Always convert iteration count to _default_ INTEGER. | |
3339 | ||
3340 | * sta.c (ffesta_second_): Add BYTE and WORD type/stmts; | |
3341 | changes by Scott Snyder <snyder@d0sgif.fnal.gov>. | |
3342 | * stb.c (ffestb_decl_recursive): Ditto. | |
3343 | (ffestb_decl_recursive): Ditto. | |
3344 | (ffestb_decl_entsp_2_): Ditto. | |
3345 | (ffestb_decl_entsp_3_): Ditto. | |
3346 | (ffestb_decl_funcname_2_): Ditto. | |
3347 | (ffestb_decl_R539): Ditto. | |
3348 | (ffestb_decl_R5395_): Ditto. | |
3349 | * stc.c (ffestc_establish_declstmt_): Ditto. | |
3350 | * std.c (ffestd_R539item): Ditto. | |
3351 | (ffestd_R1219): Ditto. | |
3352 | * stp.h: Ditto. | |
3353 | * str-1t.fin: Ditto. | |
3354 | * str-2t.fin: Ditto. | |
3355 | ||
3356 | * expr.c (ffeexpr_finished_): For DO loops, allow | |
3357 | any INTEGER type; convert LOGICAL (assuming -fugly) | |
3358 | to corresponding INTEGER type instead of always default | |
3359 | INTEGER; let later phases do conversion of DO start, | |
3360 | end, incr vars for implied-DO; change checks for non-integral | |
3361 | DO vars to be -Wsurprising warnings. | |
3362 | * ste.c (ffeste_io_impdo_): Convert start, end, and incr | |
3363 | to type of DO variable. | |
3364 | ||
3365 | * com.c (ffecom_init_0): Add new types for [IL][234], | |
3366 | much of which was done by Scott Snyder <snyder@d0sgif.fnal.gov>. | |
3367 | * target.c: Ditto. | |
3368 | * target.h: Ditto. | |
3369 | ||
3370 | Wed Mar 6 14:08:45 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3371 | ||
3372 | * top.c (ffe_init_gbe_): Make -frerun-loop-opt the default. | |
3373 | ||
3374 | Mon Mar 4 12:27:00 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3375 | ||
3376 | * expr.c (ffeexpr_exprstack_push_unary_): Really warn only | |
3377 | about two successive _arithmetic_ operators. | |
3378 | ||
3379 | * stc.c (ffestc_R522item_object): Allow SAVE of (understood) | |
3380 | local entity. | |
3381 | ||
3382 | * top.c (ffe_decode_option): New -f(no-)second-underscore options. | |
3383 | * top.h: New options. | |
3384 | * com.c (ffecom_get_external_identifier_, ffecom_get_identifier_): | |
3385 | New options. | |
3386 | ||
3387 | * Make-lang.in (f77.maintainer-clean): Clean f/BUGS, f/INSTALL, | |
3388 | f/NEWS. | |
3389 | ($(srcdir)/f/BUGS, $(srcdir)/f/INSTALL, $(srcdir)/f/NEWS): | |
3390 | New rules. | |
3391 | ($(srcdir)/f/g77.info, $(srcdir)/f/g77.dvi): Depend on | |
3392 | f/bugs.texi and f/news.texi. | |
3393 | (f77.install-man): Install f77 man pages (if enabled). | |
3394 | (f77.uninstall): Uninstall info docs, f77 man pages (if enabled). | |
3395 | ||
3396 | * top.c (ffe_init_gbe_): New function. | |
3397 | (ffe_decode_option, ffe_file): Call ffe_init_gbe_ to | |
3398 | set defaults for gcc options. | |
3399 | ||
3400 | Sat Jan 20 13:57:19 1996 Craig Burley <burley@gnu.ai.mit.edu> | |
3401 | ||
3402 | * com.c (ffecom_get_identifier_): Eliminate needless | |
3403 | comparison of results of strchr. | |
3404 | ||
3405 | Tue Dec 26 11:41:56 1995 Craig Burley <burley@gnu.ai.mit.edu> | |
3406 | ||
3407 | * Make-lang.in: Add rules for new files g77.texi, g77.info, | |
3408 | and g77.dvi. | |
3409 | Reorganize the *clean rules to more closely parallel gcc's. | |
3410 | ||
3411 | * config-lang.in: Exclude g77.info from diffs. | |
3412 | ||
3413 | Sun Dec 10 02:29:13 1995 Craig Burley <burley@gnu.ai.mit.edu> | |
3414 | ||
3415 | * expr.c (ffeexpr_declare_unadorned_, | |
3416 | ffeexpr_declare_parenthesized_): Break out handling of | |
3417 | contextDATAIMPDO[INDEX,CTRL] so it's independent of symbol state. | |
3418 | Don't exec-transition these here (let ffeexpr_sym_impdoitem_ | |
3419 | handle that when appropriate). Don't "declare" them twice. | |
3420 | ||
3421 | Tue Dec 5 06:48:26 1995 Craig Burley <burley@gnu.ai.mit.edu> | |
3422 | ||
3423 | * stc.c (ffestc_promote_sfdummy_): Allow whereNONE parent | |
3424 | symbol, since it is not necessarily known whether it will | |
3425 | become LOCAL or DUMMY. | |
3426 | ||
3427 | Mon Dec 4 03:46:55 1995 Craig Burley <burley@gnu.ai.mit.edu> | |
3428 | ||
3429 | * lex.c (ffelex_display_token, ffelex_type_string_): Resurrect | |
3430 | these from their old versions and update them for possible invocation | |
3431 | from debugger. | |
3432 | * lex.h (ffelex_display_token): Declare this in case anyone | |
3433 | else wants to call it. | |
3434 | ||
3435 | * lex.c (ffelex_total_tokens_): Have this reflect actual allocated | |
3436 | tokens, no longer include outstanding "uses" of tokens. | |
3437 | ||
3438 | * malloc.c, malloc.h (MALLOC_DEBUG): New macro to control | |
3439 | checking of whether callers follow rules, now defaults to 0 | |
3440 | for "no checking" to improve compile times. | |
3441 | ||
3442 | * malloc.c (malloc_pool_kill): Fix bug that could prevent | |
3443 | subpool from actually being killed (wasn't setting its use | |
3444 | count to 1). | |
3445 | ||
3446 | * proj.h, *.c (dmpout): Replace all occurrences of `stdout' | |
3447 | and some of `stderr' with `dmpout', so where to dump debugging | |
3448 | output can be easily controlled during build; add default | |
3449 | for `dmpout' of `stderr' to proj.h. | |
3450 | ||
3451 | Sun Dec 3 00:56:29 1995 Craig Burley <burley@gnu.ai.mit.edu> | |
3452 | ||
3453 | * com.c (ffecom_return_expr): Eliminate attempt at warning | |
3454 | about unset return values, since the back end does this better, | |
3455 | with better wording, and is not triggered by clearly working | |
3456 | (but spaghetti) code as easily as this test. | |
3457 | ||
3458 | Sat Dec 2 08:28:56 1995 Craig Burley <burley@gnu.ai.mit.edu> | |
3459 | ||
3460 | * target.c (ffetarget_power_*_integerdefault): Raising 0 to | |
3461 | integer constant power should not be an error condition; | |
3462 | if so, other code should catch 0 to any power, etc. | |
3463 | ||
3464 | * bad.def (FFEBAD_BAD_POWER): 0**integer now a warning instead | |
3465 | of an error. | |
3466 | ||
3467 | Fri Dec 1 00:12:03 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3468 | ||
3469 | * bad.def: Clarify diagnostic regarding complex constant elements. | |
3470 | * expr.c (ffeexpr_cb_comma_c_): Capitalize real/imaginary | |
3471 | for clarified diagnostic. | |
3472 | ||
3473 | * com.c (ffecom_close_include_): Close the file! | |
3474 | ||
3475 | * lex.c (ffelex_file_fixed): Update line info if the line | |
3476 | has any content, not just if it finishes a previous line | |
3477 | or has a label. | |
3478 | (ffelex_file_free): Clarify switch statement code. | |
3479 | ||
3480 | Sat Nov 18 19:37:22 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3481 | ||
3482 | * Version 0.5.17 released. | |
3483 | ||
3484 | Fri Nov 17 14:27:24 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3485 | ||
3486 | * Make-lang.in: Fix typo in comment. | |
3487 | ||
3488 | * Makefile.in (f/fini.o, f/proj-h.o): Don't use `$<' since | |
3489 | not all makes support it (e.g. NeXT make), use explicit | |
3490 | source name instead (with $(srcdir) and munging). | |
3491 | (ASSERT_H): assert.h lives in source dir, not build dir. | |
3492 | ||
3493 | Thu Nov 16 12:47:50 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3494 | ||
3495 | * com.c (ffecom_init_0): Fix dumb bug in code to produce | |
3496 | warning message about non-32-bit-systems. | |
3497 | ||
3498 | * stc.c (ffestc_R501_item): Parenthesize test to make | |
3499 | warning go away (and perhaps fix bug). | |
3500 | ||
3501 | Thu Nov 16 03:43:33 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3502 | ||
3503 | * g77.c: Upgrade to 2.7.0's gcc.c. | |
3504 | Fix -v to pass a temp name instead of "/dev/null" for "-o". | |
3505 | ||
3506 | Fri Nov 10 19:16:05 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3507 | ||
3508 | * ste.c (ffeste_begin_iterdo_): Add Toon's change to | |
3509 | make loops faster on some machines (implement termination | |
3510 | condition as "--i >= 0" instead of "i-- > 0"). | |
3511 | ||
3512 | Thu Nov 2 03:58:17 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3513 | ||
3514 | * Make-lang.in: Remove unnecessary $(exeext) a la cp/Make-lang.in. | |
3515 | ||
3516 | * com.c (ffecom_expr_): Restore old strategy for assignp variant | |
3517 | of opSYMTER case...always return the ASSIGN version of var. | |
3518 | That way, `-O -Wuninitialized' will catch "I=3;GOTO I;END" | |
3519 | (though the diagnostic will refer to `__g77_ASSIGN_i'). | |
3520 | ||
3521 | * com.c (ffecom_expr_power_integer_): For constant rhs case, | |
3522 | wrap every new eval of lhs in save_expr() so it is clear to | |
3523 | back end that MULT_EXPR(lhs,lhs) has identical operands, | |
3524 | otherwise for an rhs like 32767 it generates around 65K pseudo | |
38e01259 | 3525 | registers, with which stupid_life_analysis cannot cope |
5ff904cd JL |
3526 | (due to reg_renumber in regs.h being `short *' instead of |
3527 | `int *'). | |
3528 | ||
3529 | * com.c (ffecom_expr_): Speed up implementation of LOGICAL | |
3530 | versions of opNOT, opAND, opOR, opXOR/opNEQV, and opEQV by | |
3531 | assuming the values actually are kosher LOGICAL bit patterns. | |
3532 | Also simplify code that implements some of the INTEGER versions | |
3533 | of these. | |
3534 | ||
3535 | * com.c (skip_redundant_dir_prefix, read_name_map, | |
3536 | ffecom_open_include_, signed_type, unsigned_type): Fold in | |
3537 | changes to cccp.c made from 2.7.0 through ss-950826. | |
3538 | ||
3539 | * equiv.c (ffeequiv_layout_local_): Kill the equiv list | |
3540 | if no syms in list. | |
3541 | ||
3542 | * expr.c (ffeexpr_reduced_eqop2_): Issue specific diagnostic | |
3543 | regarding usage of .EQV./.NEQV. in preference to .EQ./.NE.. | |
3544 | ||
3545 | * intrin.c: Add ERF and ERFC as generic intrinsics. | |
3546 | intrin.def: Same. | |
3547 | ||
3548 | * sta.c (ffesta_save_, ffesta_second_): Whoever calls | |
3549 | ffestd_exec_begin must also set ffesta_seen_first_exec = TRUE, | |
3550 | and anytime stc sees an exec transition, it must do both. | |
3551 | stc.c (ffestc_eof): Same. | |
3552 | ||
3553 | * stc.c (ffestc_promote_sfdummy_): If failed implicit typing | |
3554 | or CHARACTER*(*) arg, after calling ffesymbol_error, don't | |
3555 | reset info to ENTITY/DUMMY, because ffecom_sym_transform_ | |
3556 | doesn't expect such a thing with ANY/ANY type. | |
3557 | ||
3558 | * target.h (*logical*): Change some of these so they parallel | |
3559 | changes in com.c, e.g. for _eqv_, use (l)==(r) instead of | |
3560 | !!(l)==!!(r), to get a more faithful result. | |
3561 | ||
3562 | Fri Oct 27 07:06:59 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3563 | ||
3564 | * com.c (ffecom_sym_transform_): Simplify code for local | |
3565 | EQUIVALENCE case. | |
3566 | ||
3567 | * expr.c (ffeexpr_exprstack_push_unary_): Warn about two | |
3568 | successive operators. | |
3569 | (ffeexpr_exprstack_push_binary_): Warn about "surprising" | |
3570 | operator precedence, as in "-2**2". | |
3571 | ||
3572 | * lang-options.h: Add -W(no-)surprising options. | |
3573 | ||
3574 | * parse.c (yyparse): Don't reset -fpedantic if not -pedantic. | |
3575 | ||
3576 | * top.c (ffe_decode_option): Support new -Wsurprising option. | |
3577 | * top.h: Ditto. | |
3578 | ||
3579 | Mon Oct 23 09:14:15 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3580 | ||
3581 | * com.c (ffecom_finish_symbol_transform_): Don't transform | |
3582 | NONE/NONE (CHARACTER*(*)) vars, as these don't mean anything | |
3583 | in debugging terms, and can't be turned into anything | |
3584 | in the back end (so ffecom_sym_transform_ crashes on them). | |
3585 | ||
3586 | * com.c (ffecom_expr_): Change strategy for assignp variant | |
3587 | of opSYMTER case...always return the original var unless | |
3588 | it is not wide enough. | |
3589 | ||
3590 | * ste.c (ffeste_io_cilist_): Clarify diagnostic for ASSIGN | |
3591 | involving too-narrow variable. This shouldn't happen, though. | |
3592 | (ffeste_io_icilist_): Ditto. | |
3593 | (ffeste_R838): Ditto. | |
3594 | (ffeste_R839): Ditto. | |
3595 | ||
3596 | Thu Oct 19 03:21:20 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3597 | ||
3598 | * com.c (ffecom_sym_transform_assign_): Set TREE_STATIC | |
3599 | using the same decision-making process as used for their twin | |
3600 | variables, so ASSIGN can last across RETURN/CALL as appropriate. | |
3601 | ||
3602 | Fri Sep 22 20:21:18 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3603 | ||
3604 | * Makefile.in: fini is a host program, so it needs a host-compiled | |
3605 | version of proj.o, named proj-h.o. f/fini, f/fini.o, and | |
3606 | f/proj-h.o targets updated accordingly. | |
3607 | ||
3608 | * com.c (__eprintf): New function. | |
3609 | ||
3610 | Wed Sep 20 02:26:36 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3611 | ||
3612 | * lang-options.h: Add omitted -funix-intrinsics-* options. | |
3613 | ||
3614 | * malloc.c (malloc_find_inpool_): Check for infinite | |
3615 | loop, crash if detected (user reports encountering | |
3616 | them in some large programs, this might help track | |
3617 | down the bugs). | |
3618 | ||
3619 | Thu Sep 7 13:00:32 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3620 | ||
3621 | * com.c (lang_print_error_function): Don't dereference null | |
3622 | pointer when outside any program unit. | |
3623 | (ffecom_let_char_, ffecom_arg_ptr_to_expr): If catlist | |
3624 | item or length ever error_mark_node, don't continue processing, | |
3625 | since back-end functions like build_pointer_type crash on | |
3626 | error_mark_node's (due to pushing bad obstacks, etc.). | |
3627 | ||
3628 | Wed Aug 30 15:58:35 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3629 | ||
3630 | * Version 0.5.16 released. | |
3631 | ||
3632 | Mon Aug 28 12:24:20 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3633 | ||
3634 | * bad.c (ffebad_finish): Fix botched message when no places | |
3635 | are printed (due to unknown line info, etc.). | |
3636 | ||
3637 | * std.c (ffestd_subr_labels_): Do a better job finding | |
3638 | line info in the case of typeANY and diagnostics. | |
3639 | ||
3640 | Fri Aug 25 15:19:29 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3641 | ||
3642 | * com.c (DECL_ARTIFICIAL): Surround all references to this | |
3643 | macro with #if !BUILT_FOR_270 and #endif. | |
3644 | (init_lex): Surround print_error_function decl with | |
3645 | #if !BUILT_FOR_270 and #endif. | |
3646 | (lang_init): Call new ffelex_hash_kludge function to solve | |
3647 | problem with preprocessed files that have INCLUDE statements. | |
3648 | ||
3649 | * lex.c (ffelex_getc_): New function. | |
3650 | (ffelex_cfelex_): Use ffelex_getc_ instead of getc in any | |
3651 | paths of code that can be affected by ffelex_hash_kludge. | |
3652 | Don't make an EOF token for unrecognized token; set token | |
3653 | to NULL instead, to avoid problems when not initialized. | |
3654 | (ffelex_hash_): Use ffelex_getc_ instead of getc in any | |
3655 | paths of code that can be affected by ffelex_hash_kludge. | |
3656 | Test token returned by ffelex_cfelex_ for NULL, meaning | |
3657 | unrecognized token. | |
3658 | Get rid of useless used_up variable. | |
3659 | Don't do ffewhere stuff or kill any tokens if in | |
3660 | ffelex_hash_kludge. | |
3661 | (ffelex_file_fixed, ffelex_file_free): Use ffelex_getc_ | |
3662 | instead of getc in any paths of code that can be affected | |
3663 | by ffelex_hash_kludge. | |
3664 | (ffelex_hash_kludge): New function. | |
3665 | ||
3666 | * lex.h (ffelex_hash_kludge): New function. | |
3667 | ||
3668 | Wed Aug 23 15:17:40 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3669 | ||
3670 | * com.c: Implement -f(no-)underscoring options by always | |
3671 | compiling in code to do it, and having that code inhibit | |
3672 | itself when -fno-underscoring is in effect. This option | |
3673 | overrides -f(no-)f2c for this purpose; -f(no-)f2c returns | |
3674 | to it's <=0.5.15 behavior of affecting only how code | |
3675 | is generated, not how/whether names are mangled. | |
3676 | ||
3677 | * target.h: Redo specification of appending underscores so | |
3678 | the macros are named "_default" instead of "_is" and the | |
3679 | two-underscore macro defaults to 1. | |
3680 | ||
3681 | * top.c, top.h (underscoring): Add appropriate stuff | |
3682 | for the -f(no-)underscoring options. | |
3683 | ||
3684 | Tue Aug 22 10:25:01 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3685 | ||
3686 | * bad.c (ffebad_finish): Call report_error_function (in toplev.c) | |
3687 | to better identify location of problem. | |
3688 | Say "(continued):" instead of "(continued:)" for consistency. | |
3689 | ||
3690 | * com.c (ffecom_gen_sfuncdef_): Set and reset new | |
3691 | ffecom_nested_entry_ variable to hold ffesymbol being compiled. | |
3692 | (lang_print_error_function): New function from toplev.c. | |
3693 | Use ffecom_nested_entry_ to help determine which name | |
3694 | and kind-string to print. | |
3695 | (ffecom_expr_intrinsic_): Handle EXIT and FLUSH invocations | |
3696 | with different calling sequences than library functions. | |
3697 | Have SIGNAL and SYSTEM push and pop calltemps, and convert | |
3698 | their return values to the destination type (just in case). | |
3699 | (FFECOM_rttypeINT_): New return type for `int', in case | |
3700 | gcc/f/runtime/libF77/system_.c(system_) is really supposed | |
3701 | to return `int' instead of `ftnint'. | |
3702 | ||
3703 | * com.h (report_error_function): Declare this. | |
3704 | ||
3705 | * equiv.c (ffeequiv_layout_local_): Don't forget to consider | |
3706 | root variable itself as possible "first rooted variable", | |
3707 | else might never set symbol and then crash later. | |
3708 | ||
3709 | * intrin.c (ffeintrin_check_exit_): Change to allow no args | |
3710 | and rename to ffeintrin_check_int_1_o_ for `optional'. | |
3711 | #define ffeintrin_check_exit_ and _flush_ to this new | |
3712 | function, so intrin.def can refer to the appropriate names. | |
3713 | ||
3714 | * intrin.def (FFEINTRIN_impFLUSH): Validate using | |
3715 | ffeintrin_check_flush_ so passing an INTEGER arg is allowed. | |
3716 | ||
3717 | * lex.c (ffelex_file_push_, ffelex_file_pop_): New functions | |
3718 | to manage input_file_stack in gbe. | |
3719 | (ffelex_hash_): Call new functions (instead of doing code). | |
3720 | (ffelex_include_): Call new functions to update stack for | |
3721 | INCLUDE (_hash_ handles cpp output of #include). | |
3722 | ||
3723 | Mon Aug 21 08:09:04 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3724 | ||
3725 | * Makefile.in: Put `-W' in front of every `-Wall', since | |
3726 | 2.7.0 requires that to engage `-Wunused' for parameters. | |
3727 | ||
3728 | * com.c: Mark all parameters as artificial, so | |
3729 | `-W -Wunused' doesn't complain about unused ones (since | |
3730 | there's no way right not to individually specify attributes | |
3731 | like `unused'). | |
3732 | ||
3733 | * proj.h: Don't #define UNUSED if already defined, regardless | |
3734 | of host compiler. | |
3735 | ||
3736 | Sun Aug 20 16:03:56 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3737 | ||
3738 | * gbe/2.7.0.diff: Regenerate. | |
3739 | ||
3740 | * lang-options.h, lang-specs.h: If not __STDC__ (ANSI C), | |
3741 | avoid doing anything, especially the stringizing in -specs.h. | |
3742 | ||
3743 | Thu Aug 17 03:36:12 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3744 | ||
3745 | * lang-specs.h: Remove useless optional settings of -traditional, | |
3746 | since -traditional is always set anyway. | |
3747 | ||
3748 | Wed Aug 16 16:56:46 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3749 | ||
3750 | * Make-lang.in (F2C_INSTALL_FLAG, F2CLIBOK): More | |
3751 | control over whether to install f2c-related stuff. | |
3752 | (install-f2c-*): New targets to install f2c-related | |
3753 | stuff in system, not just gcc, directories. | |
3754 | ||
3755 | * com.c: Change calls to ffecom_get_invented_identifier | |
3756 | to use generally more predictable names. | |
3757 | Change calls to build_range_type to ensure consistency | |
3758 | of types of operands. | |
3759 | (ffecom_get_external_identifier_): Change to accept | |
3760 | symbol info, not just text, so it can use f2c flag for | |
3761 | symbol to decide whether to append underscore(s). | |
3762 | (ffecom_get_identifier_): Don't change names if f2c flag | |
3763 | off for compilation. | |
3764 | (ffecom_type_permanent_copy_): Use same type for new max as | |
3765 | used for min. | |
3766 | (ffecom_notify_init_storage): Offline fixups for stand-alone. | |
3767 | ||
3768 | * data.c (ffedata_gather): Explicitly test for common block, | |
3769 | since it's no longer always the case that a local EQUIVALENCE | |
3770 | group has no symbol ptr (it now can, if a user-predictable | |
3771 | "rooted" symbol has been identified). | |
3772 | ||
3773 | * equiv.c: Add some debugging stuff. | |
3774 | (ffeequiv_layout_local_): Set symbol ptr with user-predictable | |
3775 | "rooted" symbol, for giving the invented aggregate a | |
3776 | predictable name. | |
3777 | ||
3778 | * g77.c (append_arg): Allow for 20 extra args instead of 10. | |
3779 | (main): For version-only case, add `-fnull-version' and, unless | |
3780 | explicitly omitted, `-lf2c -lm'. | |
3781 | ||
3782 | * lang-options.h: New "-fnull-version" option. | |
3783 | ||
3784 | * lang-specs.h: Support ".fpp" suffix for preprocessed source | |
3785 | (useful for OS/2, MS-DOS, other case-insensitive systems). | |
3786 | ||
3787 | * stc.c (ffestc_R544_equiv_): Swap way lists are merged so this | |
3788 | is consistent with the order in which lists are built, making | |
3789 | user predictability of invented aggregate name much higher. | |
3790 | ||
3791 | * storag.c, storag.h (FFESTORAG_typeDUMMY): Delete this enum. | |
3792 | ||
3793 | * top.c: Accept, but otherwise ignore, `-fnull-version'. | |
3794 | ||
3795 | Tue Aug 15 07:01:07 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3796 | ||
3797 | * DOC, INSTALL, PROJECTS: Extensive improvements to documentation. | |
3798 | ||
3799 | Sun Aug 13 01:55:18 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3800 | ||
3801 | * INSTALL (f77-install-ok): Document the use of this file. | |
3802 | ||
3803 | * Make-lang.in (F77_INSTALL_FLAG): New flag to control | |
3804 | whether to install an `f77' command (based on whether | |
3805 | a file named `f77-install-ok' exists in the source or | |
3806 | build directory) to replace the broken attempt to use | |
3807 | comment lines to avoid installing `f77' (broken in the | |
3808 | sense that it prevented installation of `g77'). | |
3809 | ||
3810 | Mon Aug 7 06:14:26 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3811 | ||
3812 | * DOC: Add new sections for g77 & gcc compiler options, | |
3813 | source code form, and types, sizes and precisions. | |
3814 | Remove lots of old "delta-version" info, or at least | |
3815 | summarize it. | |
3816 | ||
3817 | * INSTALL: Add info here that used to be in DOC. | |
3818 | Other changes. | |
3819 | ||
3820 | * g77.c (lookup_option, main): Check for --print-* options, | |
3821 | so we avoid adding version-determining stuff. | |
3822 | ||
3823 | Wed Jul 26 15:51:03 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3824 | ||
3825 | * Make-lang.in, Makefile.in (input.j, INPUT_H): New file. | |
3826 | Update dependencies accordingly. | |
3827 | ||
3828 | * bad.c (ffebad_here): Okay to use unknown line/col. | |
3829 | ||
3830 | * compilers.h (@f77-cpp-input): Remove -P option now that | |
3831 | # directives are handled by f771. Update other options | |
3832 | to be more consistent with @c in gcc/gcc.c. Don't run f771 | |
3833 | if -E specified, etc., a la @c. | |
3834 | (@f77): Don't run f771 if -E specified, etc., a la @c. | |
3835 | ||
3836 | * config-lang.in: Avoid use of word "guaranteed". | |
3837 | ||
3838 | * input.j: New file to wrap around gcc/input.h. | |
3839 | ||
3840 | * lex.j: Add support for parsing # directives output by cpp. | |
3841 | (ffelex_cfebackslash_): New function. | |
3842 | (ffelex_cfelex_): New function. | |
3843 | (ffelex_get_directive_line_): New function. | |
3844 | (ffelex_hash_): New function. | |
3845 | (ffelex_include_): Change to not use ffewhere_file_(begin|end). | |
3846 | Also fix bug in pointing to next line (for diagnostics, &c) | |
3847 | following successful INCLUDE. | |
3848 | (ffelex_next_line_): New function that does chunk of code | |
3849 | seen in several places elsewhere in the lexers. | |
3850 | (ffelex_file_fixed): Delay finishing statement until source | |
3851 | line is registered with ffewhere, so INCLUDE processing | |
3852 | picks up the info correctly. | |
3853 | Okay to kill or use unknown line/col objects now. | |
3854 | Handle HASH (#) lines. | |
3855 | Reorder tests for insubstantial lines to put most frequent | |
3856 | occurrences at top, for possible minor speedup. | |
3857 | Some general consolidation of code. | |
3858 | (ffelex_file_free): Handle HASH (#) lines. | |
3859 | Okay to kill or use unknown line/col objects now. | |
3860 | Some general consolidation of code. | |
3861 | (ffelex_init_1): Detect HASH (#) lines. | |
3862 | (ffelex_set_expecting_hollerith): Okay to kill or use unknown | |
3863 | line/col objects now. | |
3864 | ||
3865 | * lex.h (FFELEX_typeHASH): New enum. | |
3866 | ||
3867 | * options-lang.h (-fident, -fno-ident): New options. | |
3868 | ||
3869 | * stw.c (ffestw_update): Okay to kill unknown line/col objects | |
3870 | now. | |
3871 | ||
3872 | * target.h (FFETARGET_okREALQUAD, FFETARGET_okCOMPLEXDOUBLE, | |
3873 | FFETARGET_okCOMPLEXQUAD): #define these appropriately. | |
3874 | ||
3875 | * top.c: Include flag.j wrapper, not flags.h directly. | |
3876 | (ffe_is_ident_): New flag. | |
3877 | (ffe_decode_option): Handle -fident and -fno-ident. | |
3878 | (ffe_file): Replace obsolete ffewhere_file_(begin|end) with | |
3879 | ffewhere_file_set. | |
3880 | ||
3881 | * top.h (ffe_is_ident_, ffe_is_ident, ffe_set_is_ident): | |
3882 | New flag and access functions. | |
3883 | ||
3884 | * where.c, where.h: Remove all tracking of parent file. | |
3885 | (ffewhere_file_begin, ffewhere_file_end): Delete these. | |
3886 | (ffewhere_line_use): Make it work with unknown line object. | |
3887 | ||
3888 | Mon Jul 17 03:04:09 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3889 | ||
3890 | * com.c (ffecom_sym_transform_): Set DECL_IN_SYSTEM_HEADER | |
3891 | flag for any local vars used as stmtfunc dummies or DATA | |
3892 | implied-DO iter vars, so no -Wunused warnings are produced | |
3893 | for them (a la f2c). | |
3894 | (ffecom_init_0): Do "extern int xargc;" for IARGC() intrinsic. | |
3895 | Warn if target machine not 32 bits, since g77 isn't yet | |
3896 | working on them at all well. | |
3897 | ||
3898 | * expr.c (ffeexpr_sym_lhs_call_, ffeexpr_sym_lhs_data_, | |
3899 | ffeexpr_sym_lhs_extfunc_, ffeexpr_sym_rhs_actualarg_, | |
3900 | ffeexpr_sym_rhs_let_, ffeexpr_paren_rhs_let_): Don't | |
3901 | gratuitously set attr bits that don't apply just | |
3902 | to avoid null set meaning error; instead, use explicit | |
3903 | error flag, and allow null attr set, to | |
3904 | fix certain bugs discovered by looking at this code. | |
3905 | ||
3906 | * g77.c: Major changes to improve support for gcc long options, | |
3907 | to make `g77 -v' report more useful info, and so on. | |
3908 | ||
3909 | Mon Jul 3 14:49:16 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3910 | ||
3911 | * DOC, com.c, intrin.h, intrin.c, intrin.def, target.h, top.c, | |
3912 | top.h: Add new `unix' group of intrinsics, which includes the | |
3913 | newly added ERF, ERFC, EXIT, plus even newer ABORT, DERF, DERFC, | |
3914 | FLUSH, GETARG, GETENV, SIGNAL, and SYSTEM. | |
3915 | ||
3916 | Tue Jun 27 23:01:05 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3917 | ||
3918 | * bld.c, bld.h (ffebld_constant_pool, | |
3919 | ffebld_constant_character_pool): Use a single macro (the | |
3920 | former) to access the pool for allocating constants, instead | |
3921 | of latter in public and FFEBLD_CONSTANT_POOL_ internally | |
3922 | in bld.c (which was the only one that was correct before | |
3923 | these changes). Add verification of integrity of certain | |
3924 | heap-allocated areas. | |
3925 | ||
3926 | * com.c (ffecom_overlap_, ffecom_args_overlap_, | |
3927 | ffecom_tree_canonize_ptr_, ffecom_tree_canonize_ref_): New | |
3928 | functions to optimize calling COMPLEX and, someday, CHARACTER | |
3929 | functions requiring additional argument to be passed. | |
3930 | (ffecom_call_, ffecom_call_binop_, ffecom_expr_, | |
3931 | ffecom_expr_intrinsic_): Change calling | |
3932 | sequences to include more info on possible destination. | |
3933 | (ffecom_expr_intrinsic_): Add ERF(), ERFC(), and EXIT() | |
3934 | intrinsic code. | |
3935 | (ffecom_sym_transform_): For assumed-size arrays, set high | |
3936 | bound to highest possible value instead of low bound, to | |
3937 | improve validity of overlap checking. | |
3938 | (duplicate_decls): If olddecl and newdecl are the same, | |
3939 | don't do any munging, just return affirmative. | |
3940 | ||
3941 | * expr.c: Change ffecom_constant_character_pool() to | |
3942 | ffecom_constant_pool(). | |
3943 | ||
3944 | * info.c (ffeinfo_new): Compile this version if not being | |
3945 | compiled by GNU C. | |
3946 | ||
3947 | * info.h (ffeinfo_new): Don't define macro if not being | |
3948 | compiled by GNU C. | |
3949 | ||
3950 | * intrin.c, intrin.def: Add ERF(), ERFC(), and EXIT() intrinsics. | |
3951 | (ffeintrin_check_exit_): New for EXIT() subroutine intrinsic. | |
3952 | ||
3953 | * malloc.c, malloc.h (malloc_verify_*): New functions to verify | |
3954 | integrity of heap-storage areas. | |
3955 | ||
3956 | * stc.c (ffestc_R834, ffestc_R835): Handle possibility that | |
3957 | an enclosing DO won't have a construct name even when the | |
3958 | CYCLE/EXIT does (i.e. without dereferencing NULL). | |
3959 | ||
3960 | * target.c, target.h (ffetarget_verify_character1): New function | |
3961 | to verify integrity of heap storage used to hold character constant. | |
3962 | ||
3963 | Thu Jun 22 15:36:39 1995 Howard Gordon (flash@super.org) | |
3964 | ||
3965 | * stp.h (ffestpVxtcodeIx): Fix typo in typedef for this. | |
3966 | ||
3967 | Mon May 29 15:22:31 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
3968 | ||
3969 | * *: Make all sorts of changes to accommodate upcoming gcc-2.7.0. | |
3970 | I didn't keep track of them, nor just when I made them, nor | |
3971 | when I (much later, probably in early August 1995) modified | |
3972 | them so they could properly handle both 2.7.0 and 2.6.x. | |
3973 | ||
3974 | * com.c (ffecom_expr_power_integer_): Don't expand_start_stmt_expr | |
3975 | if transforming dummy args, because the back end cannot handle | |
3976 | that (it's rejected by the gcc front end), just generate | |
3977 | call to run-time library. | |
3978 | Back out changes in 0.5.15 because more temporaries might be | |
3979 | needed anyway (for COMPLEX**INTEGER). | |
3980 | (ffecom_push_tempvar): Remove inhibitor. | |
3981 | Around start_decl and finish_decl (in particular, arround | |
3982 | expand_decl, which is called by them), push NULL_TREE into | |
3983 | sequence_rtl_expr, an external published by gcc/function.c. | |
3984 | This makes sure the temporary is truly in the function's | |
3985 | context, not the inner context of a statement-valued expression. | |
3986 | (I think the back end is inconsistent here, but am not | |
3987 | interested in convincing the gbe maintainers about this now.) | |
3988 | (pushdecl): Make sure that when pushing PARM_DECLs, nothing | |
3989 | other than them are pushed, as happened for 0.5.15 and which, | |
3990 | if done for other reasons not fixed here, might well indicate | |
3991 | some other problem -- so crash if it happens. | |
3992 | ||
3993 | * equiv.c (ffeequiv_layout_local_): If the local equiv group | |
3994 | has a non-nil COMMON field, it should mean that an error has | |
3995 | occurred and been reported, so just trash the local equiv | |
3996 | group and do nothing. | |
3997 | ||
3998 | * stc.c (ffestc_promote_sfdummy_): Set sfdummy arg state to | |
3999 | UNDERSTOOD so above checking for duplicate args actually | |
4000 | works, and so we don't crash later in pushdecl. | |
4001 | ||
4002 | * ste.c (ffeste_R1001): Set initial value only for VAR_DECLs, | |
4003 | not for, e.g., LABEL_DECLs, which the FORMAT label can be | |
4004 | if it was previously treated as an executable label. | |
4005 | ||
4006 | Sat May 20 01:53:53 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4007 | ||
4008 | * com.c (ffecom_sym_transform_): For adjustable arrays, | |
4009 | pass high bound through variable_size in case its primaries | |
4010 | are changed (dumb0.f, and this might also improve | |
4011 | performance so it approaches f2c|gcc). | |
4012 | ||
4013 | Fri May 19 11:00:36 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4014 | ||
4015 | * Version 0.5.15 released. | |
4016 | ||
4017 | * com.c (ffecom_expr_power_integer_): Push temp vars | |
4018 | before expanding a statement expression, since that seems | |
4019 | to cause temp vars to be "forgotten" after the end of the | |
4020 | expansion in the back end. Disallow more temp-var | |
4021 | pushing during such an expansion, just in case. | |
4022 | (ffecom_push_tempvar): Crash if a new variable needs to be | |
4023 | pushed but cannot be at this point (should never happen). | |
4024 | ||
4025 | Wed May 17 12:26:16 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4026 | ||
4027 | * expr.c (ffeexpr_collapse_convert): Add code to convert | |
4028 | LOGICAL to CHARACTER. Reject conversion of REAL or COMPLEX | |
4029 | to CHARACTER entirely, as it cannot be supported with all | |
4030 | configurations. | |
4031 | ||
4032 | * target.h, target.c (ffetarget_convert_character1_logical1): | |
4033 | New function. | |
4034 | ||
4035 | Sun May 14 00:00:09 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4036 | ||
4037 | * com.c (ffecom_do_entry_, ffecom_gen_sfuncdef_, | |
4038 | ffecom_start_progunit_, ffecom_sym_transform_, | |
4039 | ffecom_init_0, start_function): Changes to have REAL | |
4040 | external functions return same type as DOUBLE PRECISION | |
4041 | external functions when -ff2c is in force; while at it, | |
4042 | some code cleanups done. | |
4043 | ||
4044 | * stc.c (ffestc_R547_item_object): Disallow array declarator | |
4045 | if one already exists for symbol. | |
4046 | ||
4047 | * ste.c (ffeste_R1227): Convert result variable to type | |
4048 | of function result as seen by back end (e.g. for when REAL | |
4049 | external function actually returns result as double). | |
4050 | ||
4051 | * target.h (FFETARGET_defaultFIXED_LINE_LENGTH): New | |
4052 | macro for default for -ffixed-line-length-N option. | |
4053 | ||
4054 | * top.c (ffe_fixed_line_length_): Initialize this to new | |
4055 | target.h macro instead of constant 72. | |
4056 | ||
4057 | Tue May 9 01:20:03 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4058 | ||
4059 | * lex.c (ffelex_send_token_): If sending CHARACTER token with | |
4060 | null text field, put a single '\0' in it and set length/size | |
4061 | fields to 0 (to fix 950508-0.f). | |
4062 | (ffelex_image_char_): When setting ffelex_bad_line_ to TRUE, | |
4063 | always "close" card image by appending a null char and setting | |
4064 | ffelex_card_length_. As part of this, append useful text | |
4065 | to identify the two kinds of problems that involve this. | |
4066 | (ffelex_file_fixed): Reset ffelex_bad_line_ to FALSE after | |
4067 | seeing a line with invalid first character (fixes 950508-1.f). | |
4068 | If final nontab column is zero, assume tab seen in line. | |
4069 | (ffelex_card_image_): Always make this array 8 characters | |
4070 | longer than reflected by ffelex_card_size_. | |
4071 | (ffelex_init_1): Get final nontab column info from top instead | |
4072 | of assuming 72. | |
4073 | ||
4074 | * options-lang.h: Add -ffixed-line-length- prefix. | |
4075 | ||
4076 | * top.h: Add ffe_fixed_line_length() and _set_ version, plus | |
4077 | corresponding extern. | |
4078 | ||
4079 | * top.c: Handle -ffixed-line-length- option prefix. | |
4080 | ||
4081 | Fri Apr 28 05:40:25 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4082 | ||
4083 | * Version 0.5.14 released. | |
4084 | ||
4085 | * Make-lang.in: Add assert.j. | |
4086 | ||
4087 | * Makefile.in: Add assert.j. | |
4088 | ||
4089 | * assert.j: New file. | |
4090 | ||
4091 | Thu Apr 27 16:24:22 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4092 | ||
4093 | * bad.h (ffebad_severity): New function. | |
4094 | ||
4095 | * bad.c (ffebad_severity): New function. | |
4096 | ||
4097 | * bad.def (FFEBAD_OPEN_INCLUDE): Change severity from SEVERE | |
4098 | to FATAL, since processing continues, and that seems fine. | |
4099 | ||
4100 | * com.c: Add facility to handle -I. | |
4101 | (ffecom_file, ffecom_close_include, ffecom_open_include, | |
4102 | ffecom_decode_include_option): New global functions for -I. | |
4103 | (ffecom_file_, ffecom_initialize_char_syntax_, | |
4104 | ffecom_close_include_, ffecom_decode_include_option_, | |
4105 | ffecom_open_include_, append_include_chain, open_include_file, | |
4106 | print_containing_files, read_filename_string, file_name_map, | |
4107 | savestring): New internal functions for -I. | |
4108 | ||
4109 | * compilers.h: Pass -I flag(s) to f771 (via "%{I*}"). | |
4110 | ||
4111 | * lex.c (ffelex_include_): Call ffecom_close_include | |
4112 | to close include file, for its tracking needs for -I, | |
4113 | instead of using fclose. | |
4114 | ||
4115 | * options-lang.h: Add -I prefix. | |
4116 | ||
4117 | * parse.c (yyparse): Call ffecom_file for main input file, | |
4118 | so -I handling works (diagnostics). | |
4119 | ||
4120 | * std.c (ffestd_S3P4): Have ffecom_open_include handle | |
4121 | opening and diagnosing errors with INCLUDE files. | |
4122 | ||
4123 | * ste.c (ffeste_begin_iterdo_): Use correct algorithm for | |
4124 | calculating # of iterations -- mathematically similar but | |
4125 | computationally different algorithm was not handling cases | |
4126 | like "DO I=6,5,2" correctly, because (5-6)/2+1 => 1, not 0. | |
4127 | ||
4128 | * top.c (ffe_decode_option): Allow -I, restructure a bit | |
4129 | for clarity and, maybe, speed. | |
4130 | ||
4131 | Mon Apr 17 13:31:11 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4132 | ||
4133 | * g77.c: Remove -lc, turns out not all systems has it, but | |
4134 | leave other changes in for clarity of code. | |
4135 | ||
4136 | Sun Apr 16 21:50:33 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4137 | ||
4138 | * com.c (ffecom_expr_): Implement ARRAY_EXPR as INDIRECT_REF | |
4139 | of appropriate PLUS_EXPRs of ptr_to_expr of array, to see | |
4140 | if this generates better code. (Conditional on | |
4141 | FFECOM_FASTER_ARRAY_REFS.) | |
4142 | ||
4143 | Sun Apr 16 00:22:48 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4144 | ||
4145 | * Make-lang.in (F77_SRCS): Remove g77.c, since it doesn't | |
4146 | contribute to building f771. | |
4147 | ||
4148 | * Makefile.in (dircheck): Remove/replace with f/Makefile, because | |
4149 | phony targets that are referenced in other real targets get run | |
4150 | when those targets are specified, which is a waste of time (e.g. | |
4151 | when rebuilding and only g77.c has changed, f771 was being linked | |
4152 | anyway). | |
4153 | ||
4154 | * g77.c: Include -lc between -lf2c and -lm throughout. | |
4155 | ||
4156 | * implic.c (ffeimplic_establish_symbol): If -Wimplicit, warn if | |
4157 | implicit type given to symbol. | |
4158 | ||
4159 | * lex.c (ffelex_include_): Don't gratuitously increment line | |
4160 | number here. | |
4161 | ||
4162 | * top.h, top.c (ffe_is_warn_implicit_): New global variable and | |
4163 | related access macros. | |
4164 | (ffe_decode_option): Handle -W options, including -Wall and | |
4165 | -Wimplicit. | |
4166 | ||
4167 | * where.c (ffewhere_line_new): Don't muck with root line (was | |
4168 | crashing on null input since lexer changes over the past week | |
4169 | or so). | |
4170 | ||
4171 | Thu Apr 13 16:48:30 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4172 | ||
4173 | * com.c (ffecom_init_0): Register built-in functions for cos, | |
4174 | sin, and sqrt. | |
4175 | (ffecom_tree_fun_type_double): New variable. | |
4176 | (ffecom_expr_intrinsic_): Update f2c input and output files | |
4177 | to latest version of f2c (no important g77-related changes | |
4178 | noted, just bug fixes to f2c and such). | |
4179 | (builtin_function): New function from c-decl.c. | |
4180 | ||
4181 | * com-rt.def: Refer to built-in functions for cos, sin, and sqrt. | |
4182 | ||
4183 | Thu Apr 13 10:25:09 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4184 | ||
4185 | * com.c (ffecom_expr_intrinsic_): Convert 0. to appropriate | |
4186 | type to keep DCMPLX(I) from crashing the compiler. | |
4187 | (ffecom_expr_): Don't convert result from ffecom_tree_divide_. | |
4188 | (ffecom_tree_divide_): Add tree_type argument, have all callers | |
4189 | pass one, and don't convert right-hand operand to it (this is | |
4190 | to make this new function work as much like the old in-line | |
4191 | code used in ffecom_expr_ as possible). | |
4192 | ||
4193 | * lex.c: Maintain lineno and input_filename the way the gcc | |
4194 | lexer does. | |
4195 | ||
4196 | * std.c (ffestd_exec_end): Save and restore lineno and | |
4197 | input_filename around the second pass, which sets them | |
4198 | appropriately for each saved statement. | |
4199 | ||
4200 | Wed Apr 12 09:44:45 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4201 | ||
4202 | * com.c (ffecom_expr_power_integer_): New function. | |
4203 | (ffecom_expr_): Call new function for power op with integer second | |
4204 | argument, for generating better code. Also replace divide | |
4205 | code with call to new ffecom_tree_divide_ function. | |
4206 | Canonicalize calls to ffecom_truth_value(_invert). | |
4207 | (ffecom_tree_divide_): New function. | |
4208 | ||
4209 | Wed Apr 5 14:15:44 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4210 | ||
4211 | * lex.c: Change to allocate text for tokens only when actually | |
4212 | needed, which should speed compilation up somewhat. | |
4213 | Change to allow INCLUDE at any point where a statement | |
4214 | can end, i.e. in ffelex_finish_statement_ or when a SEMICOLON | |
4215 | token is sent. | |
4216 | Remove some old, obsolete code. | |
4217 | Clean up layout of entire file to improve formatting, | |
4218 | readability, etc. | |
4219 | (ffelex_set_expecting_hollerith): Remove include argument. | |
4220 | ||
4221 | Fri Mar 31 23:19:08 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4222 | ||
4223 | * bad.h, bad.c (ffebad_start_msg, ffebad_start_msg_lex): | |
4224 | New functions to generate arbitrary messages. | |
4225 | (FFEBAD_severityPEDANTIC): New severity, to correspond | |
4226 | to toplev's pedwarn() function. | |
4227 | ||
4228 | * lex.c (ffelex_backslash_): New function to implement | |
4229 | backslash processing. | |
4230 | (ffelex_file_fixed, ffelex_file_free): Implement new | |
4231 | backslash processing. | |
4232 | ||
4233 | * std.c (ffestd_R1001dump_): Don't assume CHARACTER and | |
4234 | HOLLERITH tokens stop at '\0' characters, now that backslash | |
4235 | processing is supported -- use their advertised lengths instead, | |
4236 | and double up the '\002' character for libf2c. | |
4237 | ||
4238 | Mon Mar 27 17:10:33 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4239 | ||
4240 | * com.c (ffecom_init_local_zero_): Implement -finit-local-zero. | |
4241 | (ffecom_sym_transform_): Same. | |
4242 | (ffecom_transform_equiv_): Same. | |
4243 | ||
4244 | * options-lang.h: Add -f(no-)(init-local-zero,backslash,ugly-init). | |
4245 | ||
4246 | * stb.c (ffestb_V020): Reject "TYPEblah(...", which might be | |
4247 | an array assignment. | |
4248 | ||
4249 | * target.h, top.h, top.c: Implement -finit-local-zero. | |
4250 | ||
4251 | Fri Mar 24 19:56:22 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4252 | ||
4253 | * Make-lang.in, Makefile.in: Remove conf-proj(.in) and | |
4254 | proj.h(.in) rules, plus related config.log, config.cache, | |
4255 | and config.status stuff. | |
4256 | ||
4257 | * com.c (ffecom_init_0): Change messages when atof(), bsearch(), | |
4258 | or strtoul() do not work as expected in the start-up test. | |
4259 | ||
4260 | * conf-proj, conf-proj.in: Delete. | |
4261 | ||
4262 | * lex.c (ffelex_file_fixed): Allow f2c's '&' in column 1 | |
4263 | to mean continuation line. | |
4264 | ||
4265 | * options-lang.h: New file, #include'd by ../toplev.c. | |
4266 | ||
4267 | * proj.h.in: Rename back to proj.h. | |
4268 | ||
4269 | * proj.h (LAME_ASSERT): Remove. | |
4270 | (LAME_STDIO): Remove. | |
4271 | (NO_STDDEF): Remove. | |
4272 | (NO_STDLIB): Remove. | |
4273 | (NO_BSEARCH): Remove auto detection, rename to !FFEPROJ_BSEARCH. | |
4274 | (NO_STRTOUL): Remove auto detection, rename to !FFEPROJ_STRTOUL. | |
4275 | (USE_HOST_LIMITS): Remove (maybe still needed by stand-alone?). | |
4276 | (STR, STRX): Do only ANSI C definitions. | |
4277 | ||
4278 | Mon Mar 13 10:46:13 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4279 | ||
4280 | * BUGS: Add item about g77 requiring gcc to compile it. | |
4281 | ||
4282 | * NEWS: New file listing user-visible changes in the release. | |
4283 | ||
4284 | * PROJECTS: Update to include a new item or two, and modify | |
4285 | or delete items that are addressed in this or previous releases. | |
4286 | ||
4287 | * bad.c (ffebad_finish): Don't crash if missing string &c, | |
4288 | just substitute obviously distressed string "[REPORT BUG!!]" | |
4289 | for cases where the message/caller are fudgy. | |
4290 | ||
4291 | * bad.def: Clean up error messages in a major way, add new ones | |
4292 | for use by changes in target.c. | |
4293 | ||
4294 | * com.c (ffecom_expr_): Handle opANY in opCONVERT. | |
4295 | (ffecom_let_char_): Disregard destinations with ERROR_MARK. | |
4296 | (ffecom_1, ffecom_1_fn, ffecom_2, ffecom_2s, ffecom_3, | |
4297 | ffecom_3s, &c): Check all inputs for error_mark_node. | |
4298 | (ffecom_start_progunit_): Don't transform all symbols | |
4299 | in BLOCK DATA, since it never executes, and it is silly | |
4300 | to, e.g., generate all the structures for NAMELIST. | |
4301 | (ffecom_char_length_expr_): Rename to ffecom_intrinsic_len_. | |
4302 | (ffecom_intrinsic_ichar_): New function to handle ICHAR of | |
4303 | arbitrary expression with possible 0-length operands. | |
4304 | (ffecom_expr_intrinsic_): Use ffecom_intrinsic_char_. | |
4305 | For MVBITS, set tree_type to void_type_node. | |
4306 | (ffecom_start_progunit_): Name master function for entry points | |
4307 | after primary entry point so users can easily guess it while | |
4308 | debugging. | |
4309 | (ffecom_arg_ptr_to_expr): Change treatment of Hollerith, | |
4310 | Typeless, and %DESCR. | |
4311 | (ffecom_expr_): Change treatment of Hollerith. | |
4312 | ||
4313 | * data.c (ffedata_gather_): Handle opANY in opCONVERT. | |
4314 | ||
4315 | * expr.c (ffeexpr_token_apostrophe_): Issue FFEBAD_NULL_CHAR_CONST | |
4316 | warning as necessary. | |
4317 | (ffeexpr_token_name_rhs_): Set context for args to intrinsic | |
4318 | so that assignment-like concatenation is allowed for ICHAR(), | |
4319 | IACHAR(), and LEN() intrinsics. | |
4320 | (ffeexpr_reduced_*_): Say "an array" instead of "an entity" in | |
4321 | diagnostics, since it's more informative. | |
4322 | (ffeexpr_finished_): For many contexts, check for null expression | |
4323 | and array before trying to do a conversion, to avoid redundant | |
4324 | diagnostics. | |
4325 | ||
4326 | * g77.1: Fix typo for preprocessed suffix (.F, not .f). | |
4327 | ||
4328 | * global.c (ffeglobal_init_common): Warn if initializing | |
4329 | blank common. | |
4330 | (ffeglobal_pad_common): Enable code to warn if initial | |
4331 | padding needed. | |
4332 | (ffeglobal_size_common): Complain if enlarging already- | |
4333 | initialized common, since it won't work right anyway. | |
4334 | ||
4335 | * intrin.c: Add IMAG() intrinsic. | |
4336 | (ffeintrin_check_loc_): Allow opSUBSTR in LOC(). | |
4337 | ||
4338 | * intrin.def: Add IMAG() intrinsic. | |
4339 | ||
4340 | * lex.c: Don't report FFEBAD_NULL_CHAR_CONST errors. | |
4341 | ||
4342 | * sta.c, sta.h, stb.c: Changes to clean up error messages (see | |
4343 | bad.def). | |
4344 | ||
4345 | * stb.c (ffestb_R100113_): Issue FFEBAD_NULL_CHAR_CONST | |
4346 | warning as necessary. | |
4347 | ||
4348 | * stc.c (ffestc_shriek_do_): Don't try to reference doref_line | |
4349 | stuff in ANY case, since it won't be valid. | |
4350 | (ffestc_R1227): Allow RETURN in main program unit, with | |
4351 | appropriate warnings/errors. | |
4352 | (ffestc_subr_format_): Array of any type is a CHAREXPR (F77 C5). | |
4353 | ||
4354 | * ste.c (ffeste_begin_doiter_): Couple of fixes to accurately | |
4355 | determine if loop never executes. | |
4356 | ||
4357 | * target.c (ffetarget_convert_*_hollerith_): Append spaces, | |
4358 | not zeros, to follow F77 Appendix C, and to warn when | |
4359 | truncation of non-blanks done. | |
4360 | (ffetarget_convert_*_typeless): Rewrite to do typeless | |
4361 | conversions properly, and warn when truncation done. | |
4362 | (ffetarget_print_binary, ffetarget_print_octal, | |
4363 | ffetarget_print_hex): Rewrite to use new implementation of | |
4364 | typeless. | |
4365 | (ffetarget_typeless_*): Rewrite to use new implementation | |
4366 | of typeless, and to warn about overflow. | |
4367 | ||
4368 | * target.h (ffetargetTypeless): New implementation of | |
4369 | this type. | |
4370 | ||
4371 | * type.h, type.c (ffetype_size_typeless): Remove (incorrect) | |
4372 | implementation of this function and its extern. | |
4373 | ||
4374 | Sun Mar 5 18:46:42 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4375 | ||
4376 | * BUGS: Clarify that constant handling would also fix lack of | |
4377 | adequate IEEE-754/854 support to some degree, and typeless | |
4378 | and non-decimal constants. | |
4379 | ||
4380 | * com.c (ffecom_type_permanent_copy_): Comment out to avoid | |
4381 | warnings. | |
4382 | (duplicate_decls): New function a la gcc/c-decl.c. | |
4383 | (pushdecl): Use duplicate_decls to decide whether to return | |
4384 | existing decl or new one, instead of always returning existing | |
4385 | decl. | |
4386 | (ffecom_expr_): opPERCENT_LOC now supports CHARACTER arguments. | |
4387 | (ffecom_init_0): Give f2c I/O code 0 for basictypeANY/kindtypeANY. | |
4388 | (ffecom_sym_transform_): For adjustable arrays, pass low bound | |
4389 | through variable_size in case its primaries are changed (950302-1.f). | |
4390 | ||
4391 | * com.h: More decls that belong in tree.h &c. | |
4392 | ||
4393 | * data.c (ffedata_eval_integer1_): Fix opPAREN case to not | |
4394 | treat value of expression as an error code. | |
4395 | ||
4396 | * expr.c (ffeexpr_finished_): Allow opSUBSTR in contextLOC case. | |
4397 | ||
4398 | * proj.c: Add "const" as appropriate. | |
4399 | ||
4400 | Mon Feb 27 10:04:03 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4401 | ||
4402 | * bad.def (FFEBAD_BAD_SUBSTR): Fix bad grammar in message. | |
4403 | ||
4404 | Fri Feb 24 16:21:31 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4405 | ||
4406 | * Version 0.5.13 released. | |
4407 | ||
4408 | * INSTALL: Warn that f/zzz.o will compare differently between | |
4409 | stages, since it puts the __TIME__ macro into a string. | |
4410 | ||
4411 | * com.c (ffecom_sym_transform_): Transform kindFUNCTION/whereDUMMY | |
4412 | to pointer-to-function, not function. | |
4413 | (ffecom_expr_): Use ffecom_arg_ptr_to_expr instead of | |
4414 | ffecom_char_args_ to handle comparison between CHARACTER | |
4415 | types, so either operand can be a CONCATENATE. | |
4416 | (ffecom_transform_common_): Set size of initialized common area | |
4417 | to global (largest-known) size, even though size of init might | |
4418 | be smaller. | |
4419 | ||
4420 | * equiv.c (ffeequiv_offset_): Check symbol info for ANY. | |
4421 | ||
4422 | * expr.c (ffeexpr_find_close_paren_, ffeexpr_nil_*): New functions | |
4423 | to handle following the contour of a rejected expression, so | |
4424 | statements like "PRINT(I,I,I)=0" don't cause the PRINT statement | |
4425 | code to get the second passed back to it as if there was a | |
4426 | missing close-paren before it, the comma causing the PRINT code | |
4427 | to confirm the statement, resulting in an ambiguity vis-a-vis | |
4428 | the let statement code. | |
4429 | Use the new ffecom_find_close_paren_ handler when an expected | |
4430 | close-paren is missing. | |
4431 | (ffeexpr_isdigits_): New function, use in all places that | |
4432 | currently use isdigit in repetitive code. | |
4433 | (ffeexpr_collapse_symter): Collapse to ANY if init-expr is ANY, | |
4434 | so as to avoid having symbol get "transformed" if used to | |
4435 | dimension an array. | |
4436 | (ffeexpr_token_real_, ffeexpr_token_number_real_): Don't issue | |
4437 | diagnostic about exponent, since it'll be passed along the | |
4438 | handler path, resulting in a diagnostic anyway. | |
4439 | (ffeexpr_token_apos_char_): Use consistent handler path | |
4440 | regardless of whether diagnostics inhibited. | |
4441 | (ffeexpr_token_name_apos_name_): Skip past closing quote/apos | |
4442 | even if not a match or other diagnostic issued. | |
4443 | (ffeexpr_sym_impdoitem_): Exec-transition local SEEN symbol. | |
4444 | ||
4445 | * lex.c (ffelex_image_char_): Set ffelex_saw_tab_ if TAB | |
4446 | seen, not if anything other than TAB seen! | |
4447 | ||
4448 | * stc.c (ffestc_R537_item): If source is ANY but dest isn't, | |
4449 | set dest symbol's init expr to ANY. | |
4450 | (ffestc_R501_attrib, ffestc_R522, ffestc_R522start): Complain | |
4451 | about conflict between "SAVE" by itself and other uses of | |
4452 | SAVE only in pedantic mode. | |
4453 | ||
4454 | * ste.c (ffeste_R1212): Fix loop over labels to always | |
4455 | increment caseno, to avoid pushcase returning 2 for duplicate | |
4456 | values when one of the labels is invalid. | |
4457 | ||
4458 | Thu Feb 23 12:42:04 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4459 | ||
4460 | * Version 0.5.12 released. | |
4461 | ||
4462 | * Make-lang.in (f77.install-common): Add "else true;" before outer | |
4463 | "fi" per Makefile.in patch. | |
4464 | ||
4465 | * Makefile.in (dircheck): Add "else true;" before "fi" per | |
4466 | patch from chs1pm@surrey.ac.uk. | |
4467 | ||
4468 | * com.c (ffecom_push_tempvar): If type desired is ERROR_MARK, | |
4469 | return error_mark_node, to avoid crash that results from | |
4470 | making a VAR_DECL with error_mark_node as its type. | |
4471 | ||
4472 | * ste.c (ffeste_begin_iterdo_): Convert itercount to INTEGER | |
4473 | anytime calculation of number of iterations ends up with type | |
4474 | other than INTEGER (e.g. DOUBLE PRECISION, REAL). | |
4475 | ||
4476 | Thu Feb 23 02:48:38 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4477 | ||
4478 | * Version 0.5.11 released. | |
4479 | ||
4480 | * DOC: Explain -fugly-args. | |
4481 | ||
4482 | * bad.def (FFEBAD_ACTUALARG): Explain -fugly-args and how to | |
4483 | rewrite code to not require it. | |
4484 | ||
4485 | * com.c (ffecom_vardesc_): Handle negative type code, just in | |
4486 | case. | |
4487 | (ffecom_arg_ptr_to_expr): Let ffecom_expr handle hollerith | |
4488 | and typeless constants (move code to ffecom_constantunion). | |
4489 | (ffecom_constantunion): Handle hollerith and typeless constants. | |
4490 | ||
4491 | * expr.c (ffecom_finished_): Check -fugly-args in actual-arg | |
4492 | context where hollerith/typeless provided. | |
4493 | ||
4494 | * intrin.def (FFEINTRIN_genDFLOAT): Add FFEINTRIN_specDFLOAT. | |
4495 | (FFEINTRIN_specDFLOAT): Add as f2c intrinsic. | |
4496 | ||
4497 | * target.h (ffetarget_convert_real[12]_integer, | |
4498 | ffetarget_convert_complex[12]_integer): Pass -1 for high integer | |
4499 | value if low part is negative. | |
4500 | (FFETARGET_defaultIS_UGLY_ARGS): New macro. | |
4501 | ||
4502 | * top.c (ffe_is_ugly_args_): New variable. | |
4503 | (ffe_decode_option): Handle -fugly-args and -fno-ugly-args. | |
4504 | ||
4505 | * top.h (ffe_is_ugly_args_, ffe_is_ugly_args(), | |
4506 | ffe_set_is_ugly_args()): New variable and macros. | |
4507 | ||
4508 | Thu Feb 23 02:48:38 1995 Pedro A M Vazquez (vazquez@iqm.unicamp.br) | |
4509 | ||
4510 | * g77.c (sys_errlist): Use const for __FreeBSD__ systems | |
4511 | as well. | |
4512 | ||
4513 | Wed Feb 22 13:33:43 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4514 | ||
4515 | * Version 0.5.10 released. | |
4516 | ||
4517 | * CREDITS: Add Rick Niles. | |
4518 | ||
4519 | * INSTALL: Note how to get around lack of makeinfo. | |
4520 | ||
4521 | * Make-lang.in (f/proj.h): Remove # comment. | |
4522 | ||
4523 | * Makefile.in (f/proj.h): Remove # comment. | |
4524 | ||
4525 | * com.c (ffecom_expr_): Simplify opFUNCREF/opSUBRREF conversion. | |
4526 | (ffecom_sym_transform_): For whereGLOBAL and whereDUMMY | |
4527 | kindFUNCTION, use ffecom_tree_fun_type[][] only for non-constant | |
4528 | (non-statement-function) f2c functions. | |
4529 | (ffecom_init_0): ffecom_tree_fun_type[][] and _ptr_to_*_* are | |
4530 | really f2c-interface arrays, so use base type void for COMPLEX | |
4531 | (like CHARACTER). | |
4532 | ||
4533 | Tue Feb 21 19:01:18 1995 Dave Love <d.love@dl.ac.uk> | |
4534 | ||
4535 | * Make-lang.in (f77.install-common): Expurgate the test for and | |
4536 | possible installation of f2c in line with elsewhere. Seems to have | |
4537 | been missing a semicolon anyhow! | |
4538 | ||
4539 | Tue Feb 21 11:45:25 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4540 | ||
4541 | * Version 0.5.9 released. | |
4542 | ||
4543 | * Make-lang.in (f/proj.h): touch file to register update, | |
4544 | because the previous commands won't necessarily modify it. | |
4545 | ||
4546 | * Makefile.in (f/proj.h): touch file to register update, | |
4547 | because the previous commands won't necessarily modify it. | |
4548 | ||
4549 | * Makefile.in (f/str-*.h, f/str-*.j): Explicitly specify | |
4550 | output file names, so these targets go in build, not source, | |
4551 | directory. | |
4552 | ||
4553 | * bits.c, bits.h: Switch to valid ANSI C replacement for | |
4554 | ARRAY_ZERO. | |
4555 | ||
4556 | * com.c (ffecom_expr_): Add assignp arg to support ASSIGN better. | |
4557 | If assignp is TRUE, use different tree for FFEBLD_opSYMTER case. | |
4558 | (ffecom_sym_transform_assign_): New function. | |
4559 | (ffecom_expr_assign): New function. | |
4560 | (ffecom_expr_assign_w): New function. | |
4561 | ||
4562 | * com.c (ffecom_f2c_make_type_): Do make_signed_type instead | |
4563 | of make_unsigned_type throughout. | |
4564 | ||
4565 | * com.c (ffecom_finish_symbol_transform_): Expand scope of | |
4566 | commented-out code to probably produce faster compiler code. | |
4567 | ||
4568 | * com.c (ffecom_gen_sfuncdef_): Push/pop calltemps so | |
4569 | COMPLEX works right. | |
4570 | Remove obsolete comment. | |
4571 | ||
4572 | * com.c (ffecom_start_progunit_): If non-multi alt-entry | |
4573 | COMPLEX function, primary (static) entry point returns result | |
4574 | directory, not via extra arg -- to agree with ffecom_return_expr | |
4575 | and others. | |
4576 | Pretransform all symbols so statement functions are defined | |
4577 | before any code emitted. | |
4578 | ||
4579 | * com.c (ffecom_finish_progunit): Don't posttransform all | |
4580 | symbols here -- pretransform them instead. | |
4581 | ||
4582 | * com.c (ffecom_init_0): Don't warn about possible ASSIGN | |
4583 | crash, as this shouldn't happen now. | |
4584 | ||
4585 | * com.c (ffecom_push_tempvar): Fix to handle temp vars | |
4586 | pushed while context is a statement (nested) function, and | |
4587 | add appropriate commentary. | |
4588 | ||
4589 | * com.c (ffecom_return_expr): Check TREE_USED to determine | |
4590 | where return value is unset. | |
4591 | ||
4592 | * com.h (struct _ffecom_symbol_): Add note about length_tree | |
4593 | now being used to keep tree for ASSIGN version of symbol. | |
4594 | ||
4595 | * com.h (ffecom_expr_assign, ffecom_expr_assign_rw): New decls. | |
4596 | (error): Add this prototype for back-end function. | |
4597 | ||
4598 | * fini.c (main): Grab input, output, and include names | |
4599 | directly off the command line instead of making the latter | |
4600 | two out of the first. | |
4601 | ||
4602 | * lex.c: Improve tab handling for both fixed and free source | |
4603 | forms, and ignore carriage-returns on input, while generally | |
4604 | improving the code. ffelex_handle_tab_ has been renamed and | |
4605 | reinvented as ffelex_image_char_, among other things. | |
4606 | ||
4607 | * malloc.c, malloc.h: Switch to valid ANSI C replacement for | |
4608 | ARRAY_ZERO, and kill the full number of bytes in pools and | |
4609 | areas. | |
4610 | ||
4611 | * proj.h.in (ARRAY_ZERO, ARRAY_ZERO_SIZE): Remove. | |
4612 | ||
4613 | * ste.c (ffeste_io_cilist_, ffeste_io_icilist_, ffeste_R838, | |
4614 | ffeste_R839): Issue diagnostic if a too-narrow variable used in an | |
4615 | ASSIGN context despite changes to this code and code in com.c. | |
4616 | ||
4617 | * where.c, where.h: Switch to valid ANSI C replacement for | |
4618 | ARRAY_ZERO. | |
4619 | ||
4620 | Fri Feb 17 03:35:19 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4621 | ||
4622 | * Version 0.5.8 released. | |
4623 | ||
4624 | * INSTALL: In quick-build case, list g77 target first so g77 | |
4625 | gets installed. Also, explain that gcc gets built and installed | |
4626 | as well, even though this isn't really what we want (and maybe | |
4627 | we'll find a way around this someday). | |
4628 | ||
4629 | Fri Feb 17 02:35:41 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4630 | ||
4631 | * Version 0.5.7 released. | |
4632 | ||
4633 | * Makefile.in (CONFIG_H, HCONFIG_H, TCONFIG_H, TM_H): Remove | |
4634 | ../ prefix in front of .h files, since they're in the cd. | |
4635 | ||
4636 | Fri Feb 17 01:50:48 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4637 | ||
4638 | * Version 0.5.6 released. | |
4639 | ||
4640 | Thu Feb 16 20:26:54 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4641 | ||
4642 | * ../README.g77: Remove description of g77 as "not-yet-published". | |
4643 | ||
4644 | * CREDITS: More changes. | |
4645 | ||
4646 | * Make-lang.in (G77STAGESTUFF): Remove cktyps stuff. | |
4647 | ||
4648 | * Makefile.in (CONFIG_H, HCONFIG_H, TCONFIG_H, TM_H): Don't | |
4649 | prefix gcc dir with $(srcdir) since these don't live there, | |
4650 | they are created in the build dir by gcc's configure. Add | |
4651 | a note explaining what these macros are about. | |
4652 | Update dependencies via deps-kinda. | |
4653 | ||
4654 | * README.NEXTSTEP: Credit Toon, and per his request, add his | |
4655 | email address. | |
4656 | ||
4657 | * com.h (FFECOM_DETERMINE_TYPES): #include "config.j". | |
4658 | ||
4659 | * config.j, convert.j, flags.j, hconfig.j, rtl.j, tconfig.j, | |
4660 | tm.j, tree.j: Don't #include if already done. | |
4661 | ||
4662 | * convert.j: #include "tree.j" first, as convert.h clearly depends | |
4663 | on trees being defined. | |
4664 | ||
4665 | * rtl.j: #include "config.j" first, since there's some stuff | |
4666 | in rtl.h that assumes it has been #included. | |
4667 | ||
4668 | * tree.j: #include "config.j" first, or real.h makes inconsistent | |
4669 | decision about return type of ereal_atof, leading to bugs, and | |
4670 | because tree.h/real.h assume config.h already included. | |
4671 | ||
4672 | Wed Feb 15 14:40:20 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4673 | ||
4674 | * Version 0.5.5 released. | |
4675 | ||
4676 | * Copyright notices updated to be FSF-style. | |
4677 | ||
4678 | * INSTALL: Some more clarification regarding building just f77. | |
4679 | ||
4680 | * Make-lang.in (F77_SRCS): Update wrt changing some .h to .j. | |
4681 | (install-libf77): Fix typo in new parenthetical note. | |
4682 | ||
4683 | * Makefile.in (f/*.o): Update. | |
4684 | (CONFIG_H, CONVERT_H, FLAGS_H, GLIMITS_H, HCONFIG_H, RTL_H, | |
4685 | TCONFIG_H, TM_H, TREE_H): Update/new symbols. | |
4686 | (deps-kinda): More fixes wrt changing some .h to .j. | |
4687 | Document and explain this rule a bit better. | |
4688 | Accommodate changes in output of gcc -MM. | |
4689 | ||
4690 | * *.h, *.c: Change #include's so proj.h not assumed to #include | |
4691 | malloc.h or config.h (now config.j), and so new .j files are | |
4692 | used instead of old .h ones. | |
4693 | ||
4694 | * com.c (ffecom_init_0): Use FLOAT_TYPE_SIZE for f2c's | |
4695 | TYLONG/TYLOGICAL type codes, to get g77 working on Alpha. | |
4696 | ||
4697 | * com.h: Make all f2c-related integral types "int", not "long | |
4698 | int". | |
4699 | ||
4700 | * config.j, convert.j, flags.j, glimits.j, hconfig.j, rtl.j, | |
4701 | tconfig.j, tm.j, tree.j: New files wrapping around gbe | |
4702 | .h files. | |
4703 | ||
4704 | * config.h, convert.h, flags.h, glimits.h, hconfig.h, rtl.h, | |
4705 | tconfig.h, tm.h, tree.h: Deleted so new .j files | |
4706 | can #include the gbe files directly, instead of using "../", | |
4707 | and thus do better with various kinds of builds. | |
4708 | ||
4709 | * proj.h: Delete unused NO_STDDEF and related stuff. | |
4710 | ||
4711 | Tue Feb 14 08:28:08 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4712 | ||
4713 | * BUGS: Remove item #12, cross-compiling & autoconf scripts | |
4714 | reportedly expected to work properly (according to d.love). | |
4715 | ||
4716 | * INSTALL: Add explanation of d.love's patch to config-lang.in. | |
4717 | Add explanation of how to install just g77 when gcc already installed. | |
4718 | Add note about usability of "-Wall". Add note about bug- | |
4719 | reporting. | |
4720 | ||
4721 | * Make-lang.in ($(srcdir)/f/conf-proj): Add comment about why | |
4722 | conf-proj.out. | |
4723 | (install-libf77): Echo parenthetical note to user about how to do | |
4724 | just the (aborted) libf2c installation. | |
4725 | (deps-kinda): Update to work with new configuration/build stuff. | |
4726 | ||
4727 | * bad.c (ffebad_finish): Put capitalized "warning:" &c message | |
4728 | as prefix on any diagnostic without pointers into source. | |
4729 | ||
4730 | * bad.def (FFEBAD_TOO_BIG_INIT): Add this warning message. | |
4731 | ||
4732 | * config-lang.in: Add Dave Love's patch to catch case where | |
4733 | back-end patches not applied and abort configuration. | |
4734 | ||
4735 | * data.c (ffedata_gather_, ffedata_value_): Warn when about | |
4736 | to initialize a large aggregate area, due to design flaw resulting | |
4737 | in too much time/space used to handle such cases. | |
4738 | Use COMMON area name, and first notice of symbol, for multiple- | |
4739 | initialization diagnostic, instead of member symbol and unknown | |
4740 | location. | |
4741 | (FFEDATA_sizeTOO_BIG_INIT_): New macro per above. | |
4742 | ||
4743 | Mon Feb 13 13:54:26 1995 Dave Love <d.love@dl.ac.uk> | |
4744 | ||
4745 | * Make-lang.in (F77_SRCS): Use $(srcdir)/f/proj.h.in, not | |
4746 | $(srcdir)/f/proj.h for build outside srcdir. | |
4747 | ||
4748 | Sun Feb 12 13:37:11 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4749 | ||
4750 | * ../README.g77: Clarify procedures for unpacking, add asterisks | |
4751 | to mark important things the user must do. | |
4752 | ||
4753 | * Fix dates in/add dates to ../README.g77, BUGS, CREDITS, DOC, | |
4754 | INSTALL, PROJECTS, README. | |
4755 | ||
4756 | Sun Feb 12 00:26:10 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4757 | ||
4758 | * Version 0.5.4 released. | |
4759 | ||
4760 | * Make-lang.in (f/proj.h): Reproduce this rule here from | |
4761 | Makefile.in. | |
4762 | ($(srcdir)/f/conf-proj): Put autoconf's stdout in temp file | |
4763 | conf-proj.out, then mv to conf-proj only if successful, so | |
4764 | conf-proj not touched if autoconf not installed. | |
4765 | ||
4766 | * Makefile.in ($(srcdir)/conf-proj): See Make-lang.in's similar | |
4767 | rule. | |
4768 | ||
4769 | Sat Feb 11 20:56:02 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4770 | ||
4771 | * BUGS: Clarify some bugs. | |
4772 | ||
4773 | * DOC: Many improvements and fixes. | |
4774 | ||
4775 | * README: Move bulk of text, edited, to ../README.g77, and | |
4776 | replace with pointer to that file. | |
4777 | ||
4778 | * com.c (ffecom_init_0): Comment out warning about sizeof(ftnlen) | |
4779 | as per ste.c change. Add text about ASSIGN to help user understand | |
4780 | what is being warned about. | |
4781 | ||
4782 | * conf-proj.in: Fix typos in comments. | |
4783 | ||
4784 | * proj.h.in: Add ARRAY_ZERO_SIZE to parallel malloc.h's version, | |
4785 | in case it proves to be needed. | |
4786 | ||
4787 | * ste.c: Comment out assertions requiring sizeof(ftnlen) >= | |
4788 | sizeof(char *), in the hopes that overflow will never happen. | |
4789 | (ffeste_R838): Change assertion to fatal() with at least | |
4790 | partially helpful message. | |
4791 | ||
4792 | Sat Feb 11 12:38:00 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4793 | ||
4794 | * com.c (ffecom_vardesc_): Crash if typecode is -1. | |
4795 | ||
4796 | * ste.c (ffeste_io_dolio_): Crash if typecode is -1. | |
4797 | ||
4798 | Sat Feb 11 09:51:57 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4799 | ||
4800 | * ste.c: In I/O code tests for item arrayness, sort of revert | |
4801 | to much earlier code that tests original exp, but also check | |
4802 | in newer way just in case. Newer way alone treated FOO(1:40) | |
4803 | as an array, not sure why older way alone didn't work, but I | |
4804 | think maybe it was when diagnosed code was involved, and | |
4805 | since there are now checks for error_mark_node, maybe the old | |
4806 | way alone would work. But better to be safe; both original | |
4807 | ffebld exp _and_ the transformed tree must indicate an array | |
4808 | for the size-determination code to be used, else just 1/2 elements | |
4809 | assumed. And this text is for EMACS: (foo at bar). | |
4810 | ||
4811 | Fri Feb 10 11:05:50 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4812 | ||
4813 | * ste.c: In many cases, surround statement-expansion code | |
4814 | with ffecom_push_calltemps () and ffecom_pop_calltemps () | |
4815 | so COMPLEX-returning functions can have temporaries pushed | |
4816 | in "auto-pop" mode and have them auto-popped at the end of | |
4817 | the statement. | |
4818 | ||
4819 | Wed Feb 8 14:35:10 1995 Dave Love <d.love@dl.ac.uk> | |
4820 | ||
4821 | * runtime/f2c.h.in (ftnlen, ftnint): Make same size as integer. | |
4822 | ||
4823 | * runtime/libI77/err.c (f_init): Thinko in MISSING_FILE_ELEMS | |
4824 | conditional. | |
4825 | * runtime/libI77/wrtfmt.c (mv_cur): Likewise. | |
4826 | * runtime/libI77/wsfe.c (x_putc): Likewise. | |
4827 | ||
4828 | * runtime/libF77/signal_.c (signal_): Return 0 (this is a | |
4829 | subroutine). | |
4830 | ||
4831 | * Makefile.in (f/proj.h): Depend on com.h. | |
4832 | * Make-lang.in (include/f2c.h): Likewise (and proj.h). | |
4833 | (install-libf77): Also install f2c.h. | |
4834 | ||
4835 | * runtime/libI77/Makefile.in (*.o): Add f2c.h dependency. | |
4836 | * runtime/libF77/Makefile.in: Likewise. | |
4837 | ||
4838 | Wed Feb 8 13:56:47 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4839 | ||
4840 | * stc.c (ffestc_R501_item): Don't reset kind/where to NONE when | |
4841 | setting basictype/kindtype info for symbol, or especially | |
4842 | its function/result twin, because kind/where might not be NONE. | |
4843 | ||
4844 | Tue Feb 7 14:47:26 1995 Dave Love <d.love@dl.ac.uk> | |
4845 | ||
4846 | * Make-lang.in (include/f2c.h:): Set shell variable src more | |
4847 | robustly (independent of whether srcdir is relative or absolute). | |
4848 | * Makefile.in (f/proj.h:): Likewise. | |
4849 | ||
4850 | * conf-proj.in: Check need for LAME_ASSERT. Fix indentation in | |
4851 | check for LAME_STDIO (cosmetic only with ANSI C). | |
4852 | ||
4853 | * com.h: Extra ...SIZE stuff taken from com.c. | |
4854 | ||
4855 | * com.c (FFECOM_DETERMINE_TYPES): Define before including com.h. | |
4856 | (BITS_PER_WORD etc.) Remove and use conditional definitions to com.h. | |
4857 | ||
4858 | * runtime/configure.in: #define FFECOM_DETERMINE_TYPES for com.h in | |
4859 | f2c type determination. | |
4860 | ||
4861 | * tm.h: Remove (at least pro tem) because of relative path and use | |
4862 | top-level one. | |
4863 | ||
4864 | * Make-lang.in (include/f2c.h:): Set shell variable src more | |
4865 | robustly (independent of whether srcdir is relative or absolute). | |
4866 | * Makefile.in (f/proj.h:): Likewise. | |
4867 | ||
4868 | Mon Feb 6 19:58:32 1995 Dave Love <d.love@dl.ac.uk> | |
4869 | ||
4870 | * g77.c (append_arg): Use K&R declaration for, e.g. SunOS4 build. | |
4871 | ||
4872 | Fri Feb 3 20:33:14 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4873 | ||
4874 | * g77.c (main): Treat -l like filename in terms of -x handling. | |
4875 | Rewrite arglist mechanism for ease of maintenance. | |
4876 | Make sure every -lf2c is followed by -lm and vice versa. | |
4877 | ||
4878 | * Make-lang.in: Put complete list of sources in F77_SRCS def | |
4879 | so changing a .h file, for example, causes rebuild. | |
4880 | ||
4881 | * Makefile.in: Change test for nextstep to m68k-next-nextstep* so | |
4882 | all versions of nextstep on m68k get the necessary flag. | |
4883 | ||
4884 | Fri Feb 3 19:10:32 1995 Dave Love <d.love@dl.ac.uk> | |
4885 | ||
4886 | * INSTALL: Note about possible conflict with existing libf2c.a and | |
4887 | f2c.h. | |
4888 | ||
4889 | * Make-lang.in (f77.distclean): Tidy and move deletion of | |
4890 | f/config.cache to mostlyclean. | |
4891 | (install-libf77): Test for $(libdir)/libf2c.* and barf if found | |
4892 | unless F2CLIBOK defined. | |
4893 | ||
4894 | * runtime/Makefile.in (all): Change path to include directory (and | |
4895 | elsewhere). | |
4896 | (INCLUDES): Remove (unused/misleading). | |
4897 | (distclean): Include f2c.h. | |
4898 | (clean): Include config.cache. | |
4899 | ||
4900 | * runtime/libF77/Makefile.in (.SUFFIXES): Correct typo. | |
4901 | (ALL_CFLAGS) Fix up include search path to find f2c.h in top level | |
4902 | includes always. | |
4903 | (all): Depend on f2c.h. | |
4904 | * runtime/libI77/Makefile.in (.SUFFIXES): Likewise. | |
4905 | ||
4906 | Thu Feb 2 17:17:06 1995 Dave Love <d.love@dl.ac.uk> | |
4907 | ||
4908 | * INSTALL: Note about --srcdir and GNU make. | |
4909 | ||
4910 | * runtime/f2c.h.in (Pad_UDread, ALWAYS_FLUSH): Reomve the #defines | |
4911 | per below. | |
4912 | ||
4913 | * runtime/configure.in (Pad_UDread, ALWAYS_FLUSH): Define these | |
4914 | here, not in f2c.h as they'r eonly relevant for building. | |
4915 | * runtime/configure: Regenerated. | |
4916 | ||
4917 | * config-lang.in: Warn about using GNU make outside source tree | |
4918 | since I can't get Irix5 or SunOS4 makes to work in this case. | |
4919 | ||
4920 | * Makefile.in (VPATH): Don't set it here. | |
4921 | (srcdir): Make it the normal `.' (overridden) at top level. | |
4922 | (all.indirect): New dependency `dircheck'. | |
4923 | (f771): Likewise | |
4924 | (dircheck): New target for foolproofing. | |
4925 | (f/proj.h:): Change finding source. | |
4926 | (CONFIG_H): Don't use this as the relative path in the include loses | |
4927 | f builddir != srcdir. | |
4928 | ||
4929 | * config.h: Remove per CONFIG_H change above. | |
4930 | ||
4931 | * Make-lang.in (F77_FLAGS_TO_PASS): Remove GCC_FOR_TARGET. | |
4932 | (f771:): Pass VPATH, srcdir to sub-make. | |
4933 | (f/Makefile:): New target. | |
4934 | (stmp-int-hdrs): new variable for cheating build. | |
4935 | (f77-runtime:): Alter GCC_FOR_TARGET treatment. | |
4936 | (include/f2c.h f/runtime/Makefile:) Likewise. | |
4937 | (f77-runtime-unsafe:): New (cheating) target. | |
4938 | ||
4939 | Thu Feb 2 12:09:51 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
4940 | ||
4941 | * BUGS: Update regarding losing EQUIVALENCE members in -g, and | |
4942 | regarding RS/6000 problems in the back end. | |
4943 | ||
4944 | * CREDITS: Make some changes as requested. | |
4945 | ||
4946 | * com.c (ffecom_member_trunk_): Remove unused static variable. | |
4947 | (ffecom_finish_symbol_transform_): Improve comments. | |
4948 | (ffecom_let_char_): Fix size of temp address-type var. | |
4949 | (ffecom_member_phase2_): Try fixing problem fixed by change | |
4950 | to ffecom_transform_equiv_ (f_m_p2_ function currently not used). | |
4951 | (ffecom_transform_equiv_): Remove def of unused static variable. | |
4952 | Comment-out use of ffecom_member_phase2_, until problems with | |
4953 | back end fixed. | |
4954 | (ffecom_push_tempvar): Fix assertion to not crash okay code. | |
4955 | ||
4956 | * com.h: Remove old, commented-out code. | |
4957 | Add prototype for warning() in back end. | |
4958 | ||
4959 | * ste.c (ffeste_io_dofio_, ffeste_io_dolio_, ffeste_io_douio_, | |
4960 | ffeste_io_icilist_): Check correct type of variable for arrayness. | |
4961 | ||
4962 | Sun Jan 29 14:41:42 1995 Dave Love <d.love@dl.ac.uk> | |
4963 | ||
4964 | * BUGS: Remove references to my configure bugs; add another. | |
4965 | ||
4966 | * runtime/Makefile.in (AR_FLAGS): Provide default value. | |
4967 | ||
4968 | * runtime/f2c.h.in (integer, logical): Take typedefs from | |
4969 | F2C_INTEGER configuration parameter again. | |
4970 | (NON_UNIX_STDIO): don't define it. | |
4971 | ||
4972 | * runtime/configure.in: Bring type checks for f2c.h in line with | |
4973 | com.h. | |
4974 | (MISSING_FILE_ELEMS): New variable to determine whether the relevant | |
4975 | elements of the FILE struct exist, independent of NON_UNIX_STDIO. | |
4976 | * runtime/libI77/{err,wrtfmt,wsfe}.c (MISSING_FILE_ELEMS): Use new | |
4977 | parameter. | |
4978 | ||
4979 | * config-lang.in: Comment out more of f2c rules (c.f. Make-lang.in). | |
4980 | (This stuff is relevant iff you gave configure --enable-f2c.) | |
4981 | Create f/runtime directory tree iff not building in source | |
4982 | directory. | |
4983 | ||
4984 | * Makefile.in (srcdir): Append slash so we get the right value when | |
4985 | not building in the source directory. This is a consequence of not | |
4986 | building the `f' sources in `f'. | |
4987 | (VPATH): Override configure's value for reasons above. | |
4988 | (f/proj.h f/conf-proj): New rules to build proj.h by | |
4989 | autoconfiguration. | |
4990 | ||
4991 | * proj.h: Rename to proj.h.in for autoconfiguration. | |
4992 | * proj.h.in: New as above. | |
4993 | * conf-proj conf-proj.in: New files for autoconfiguration. | |
4994 | ||
4995 | * Make-lang.in (include/f2c.h f/runtime/Makefile:): Change the order | |
4996 | of setting the sh variables so that the right GCC_FOR_TARGET is | |
4997 | used. | |
4998 | (f77.*clean:) Add products of new configuration files and make sure | |
4999 | all the *clean targets do something (unlike the ones in | |
5000 | cp/Make-lange.in). | |
5001 | ||
5002 | * com.h (FFECOM_f2cINTEGER, FFECOM_f2cLOGICAL): Define as long or | |
5003 | int appropriately to ensure sizeof(real) == sizeof(integer). | |
5004 | ||
5005 | * PROJECTS: Library section. | |
5006 | ||
5007 | * runtime/libI77/endfile.c: Don't #include sys/types.h conditional | |
5008 | on NON_UNIX_STDIO since rawio.h needs size_t. | |
5009 | * runtime/libI77/uio.c: #include <sys/types.h> for size_t if not | |
5010 | KR_headers. | |
5011 | ||
5012 | Wed Jan 25 03:31:51 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
5013 | ||
5014 | * Version 0.5.3 released. | |
5015 | ||
5016 | * INSTALL: Revise. | |
5017 | ||
5018 | * Make-lang.in: Comment out rules for building f2c itself (f/f2c/). | |
5019 | ||
5020 | * README: Revise. | |
5021 | ||
5022 | * com.c (ffecom_init_0): Warn if ftnlen or INTEGER not big enough | |
5023 | to hold a char *. | |
5024 | ||
5025 | * gbe/2.6.2.diff: Update. | |
5026 | ||
5027 | Mon Jan 23 17:10:49 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
5028 | ||
5029 | * TODO: Remove. | |
5030 | BUGS: New file. | |
5031 | PROJECTS: New file. | |
5032 | CREDITS: New file. | |
5033 | ||
5034 | * cktyps*: Remove. | |
5035 | Make-lang.in: Remove cktyps stuff. | |
5036 | Makefile.in: Remove cktyps stuff. | |
5037 | ||
5038 | * DOC: Add info on changes for 0.5.3. | |
5039 | ||
5040 | * bad.c: Put "warning:" &c on diagnostic messages. | |
5041 | Don't output informational messages if warnings disabled. | |
5042 | ||
5043 | Thu Jan 19 12:38:13 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
5044 | ||
5045 | * g77.c: Avoid putting out useless "-xnone -xf77" pairs so | |
5046 | larger command lines can be accommodated. | |
5047 | Recognize both `-xlang' and `-x lang'. | |
5048 | Recognize `-xnone' and `-x none' to mean what it does, instead | |
5049 | of treating "none" as any other language. | |
5050 | Some minor, slight improvements in the way args are handled | |
5051 | (hopefully for clearer, more maintainable code), including | |
5052 | consistency checks on arg count just in case. | |
5053 | ||
5054 | Wed Jan 18 16:41:57 1995 Craig Burley (burley@gnu.ai.mit.edu) | |
5055 | ||
5056 | * DOC: Explain -fautomatic better. | |
5057 | ||
5058 | * INSTALL: Describe libf2c.a better. | |
5059 | ||
5060 | * Make-lang.in, Makefile.in: Build f771 &c with gcc/ as cd instead | |
5061 | of gcc/f/ so debugging info is better (source file tracking). | |
5062 | Add new source file type.c. | |
5063 | ||
5064 | * Makefile.in: For nextstep3, link f771 with -segaddr __DATA | |
5065 | 6000000. Fix typo. Change deps-kinda target to handle building | |
5066 | from gcc/. Update dependencies. | |
5067 | ||
5068 | * bld-op.def, bld.h, bld.c: Remove opBACKEND and all related | |
5069 | stuff. | |
5070 | Remove consistency tests that cause compiler warnings. | |
5071 | ||
5072 | * cktyps.c: Remove all typing checking. | |
5073 | ||
5074 | * com-rt.def: Change all rttypeFLOAT_ intrinsics to rttypeDOUBLE_, | |
5075 | to precisely match how they're declared in libf2c. | |
5076 | ||
5077 | * com.h, com.c: Revise to more elegantly track related stuff | |
5078 | in the version of f2c.h used to build libf2c. | |
5079 | ||
5080 | * com.c: Increase FFECOM_sizeMAXSTACKITEM, and if 0 or undefined | |
5081 | when checked to determine where to put entity, treat as infinite. | |
5082 | Rewrite temporary mechanism to be based on trees instead of | |
5083 | ffeinfo stuff, and make it much simpler. Change interface | |
5084 | accordingly. | |
5085 | Fixes to better track types of things, make appropriate | |
5086 | conversions, etc. E.g. when making an arg for a libf2c | |
5087 | function, make sure it's of the right type (such as ftnlen). | |
5088 | Delete opBACKEND transformation code. | |
5089 | (ffecom_init_0): Smoother initialization of types, especially | |
5090 | paying attention to using consistent rules for making INTEGER, | |
5091 | REAL, DOUBLE PRECISION, etc., and for deciding their "*N" | |
5092 | and kind values that will work across all g77 platforms. | |
5093 | No longer require per-target configuration info in target.h | |
5094 | or config/*/*; use new type module to store size, alignment. | |
5095 | (ffecom_member_phase2): Declare COMMON/EQUIVALENCE group members | |
5096 | so debugger sees them. | |
5097 | (ffecom_finish_progunit): Transform all symbols in program unit, | |
5098 | so -g will show they all exist. | |
5099 | ||
5100 | * expr.c (ffeexpr_collapse_substr): Handle strange substring | |
5101 | range values. | |
5102 | ||
5103 | * info.h, info.c: Provide connection to new type module. | |
5104 | Remove tests that yield compiler warnings. | |
5105 | ||
5106 | * intrin.c (ffeintrin_is_intrinsic): Properly handle deleted | |
5107 | intrinsic. | |
5108 | ||
5109 | * lex.c (ffelex_file_fixed): Remove redundant/buggy code. | |
5110 | ||
5111 | * stc.c (ffestc_kindtype_kind_, ffestc_kindtype_star_): Replace | |
5112 | boring switch stmt with simple call to new type module. This | |
5113 | sort of thing is a reason to get up in the morning. | |
5114 | ||
5115 | * ste.c: Update to handle new interface for | |
5116 | ffecom_push/pop_tempvar. | |
5117 | Fixes to better track types of things. | |
5118 | Fixes to not crash for certain diagnosed constructs. | |
5119 | (ffeste_begin_iterdo_): Check only constants for overflow to avoid | |
5120 | spurious diagnostics. | |
5121 | Don't convert larger integer (say, INTEGER*8) to canonical integer | |
5122 | for iteration count. | |
5123 | ||
5124 | * stw.h: Track DO iteration count temporary variable. | |
5125 | ||
5126 | * symbol.c: Remove consistency tests that cause compiler warnings. | |
5127 | ||
5128 | * target.c (ffetarget_aggregate_info): Replace big switch with | |
5129 | little call to new type module. | |
5130 | (ffetarget_layout): Remove consistency tests that cause | |
5131 | compiler warnings. | |
5132 | (ffetarget_convert_character1_typeless): Pick up length of | |
5133 | typeless type from new type module. | |
5134 | ||
5135 | * target.h: Crash build if target float bit pattern cannot be | |
5136 | precisely determined. | |
5137 | Remove all the type cruft now determined by ffecom_init_0 | |
5138 | at invocation time and maintained in new type module. | |
5139 | Put casts on second arg of all REAL_VALUE_TO_TARGET_DOUBLE | |
5140 | uses so compiler warnings avoided (requires target float bit | |
5141 | pattern to be precisely determined, hence code to crash build). | |
5142 | ||
5143 | * top.c: Add inits/terminates for new type module. | |
5144 | ||
5145 | * type.h, type.c: New module. | |
5146 | ||
5147 | * gbe/2.6.2.diff: Remove all patches to files in gcc/config/ | |
5148 | directory and its subdirectories. | |
5149 | ||
5150 | Mon Jan 9 19:23:25 1995 Dave Love <d.love@dl.ac.uk> | |
5151 | ||
5152 | * com.h (FFECOM_F2C_INTEGER_TYPE_NODE): Define and use instead of | |
5153 | long_integer_type_node where appropriate. | |
5154 | ||
5155 | Tue Jan 3 14:56:18 1995 Dave Love <d.love@dl.ac.uk> | |
5156 | ||
5157 | * com.h: Make ffecom_f2c_logical_type_node long, consistent with | |
5158 | integer. | |
5159 | ||
5160 | Fri Dec 2 20:07:37 1994 Dave Love <d.love@dl.ac.uk> | |
5161 | ||
5162 | * config-lang.in (stagestuff): Add f2c conditionally. | |
5163 | * Make-lang.in: Add f2c and related targets. | |
5164 | * f2c: Add the directory. | |
5165 | ||
5166 | Fri Nov 25 22:17:26 1994 Dave Love <d.love@dl.ac.uk> | |
5167 | ||
5168 | * Makefile.in (FLAGS_TO_PASS): pass $(CROSS) | |
5169 | * Make-lang.in: more changes to runtime targets | |
5170 | ||
5171 | Thu Nov 24 18:03:21 1994 Dave Love <d.love@dl.ac.uk> | |
5172 | ||
5173 | * Makefile.in (FLAGS_TO_PASS): define for sub-makes | |
5174 | ||
5175 | * g77.c (main): change f77-cpp-output to f77-cpp-input (.F files) | |
5176 | ||
5177 | Wed Nov 23 15:22:53 1994 Dave Love <d.love@dl.ac.uk> | |
5178 | ||
5179 | * bad.c (ffebad_finish): kluge to fool emacs19 into finding errors: | |
5180 | add trailing space to <file>:<line>: | |
5181 | ||
5182 | Tue Nov 22 11:30:50 1994 Dave Love <d.love@dl.ac.uk> | |
5183 | ||
5184 | * runtime/libF77/signal_.c (RETSIGTYPE): added | |
5185 | ||
5186 | Mon Nov 21 13:04:13 1994 Dave Love <d.love@dl.ac.uk> | |
5187 | ||
5188 | * Makefile.in (compiler): add runtime | |
5189 | ||
5190 | * config-lang.in (stagestuff): add libf2c.a to stagestuff | |
5191 | ||
5192 | * Make-lang.in: | |
5193 | G77STAGESTUFF <- MORESTAGESTUFF | |
5194 | f77-runtime: new target, plus supporting ones | |
5195 | ||
5196 | * runtime: add the directory, containing libI77, libF77 and autoconf | |
5197 | stuff | |
5198 | ||
5199 | * g++.1: remove | |
5200 | ||
5201 | * g77.1: minor fixes | |
5202 | ||
5203 | Thu Nov 17 15:18:05 1994 Craig Burley (burley@gnu.ai.mit.edu) | |
5204 | ||
5205 | * Version 0.5.2 released. | |
5206 | ||
5207 | * bad.def: Modify wording of FFEBAD_UNIMPL_STMT to indicate | |
5208 | that it covers a wide array of possible problems (that, someday, | |
5209 | should be handled via separate diagnostics). | |
5210 | ||
5211 | * lex.c: Allow $ in identifiers if -fdollar-ok. | |
5212 | * top.c: Support -fdollar-ok. | |
5213 | * top.h: Support -fdollar-ok. | |
5214 | * target.h: Support -fdollar-ok. | |
5215 | * DOC: Describe -fdollar-ok. | |
5216 | ||
5217 | * std.c (ffestd_R1229_finish): Fix bug so stand-alone build works. | |
5218 | * ste.c (ffeste_R819A): Fix bug so stand-alone build works. | |
5219 | ||
5220 | * Make: Improvements for stand-alone build. | |
5221 | ||
5222 | * Makefile.in: Fix copyright text at top of file. | |
5223 | ||
5224 | * LINK, SRCS, UNLINK: Removed. Not particularly useful now that | |
5225 | g77 sources live in their own subdirectory. | |
5226 | ||
5227 | * g77.c (main): Cast arg to bzero to avoid warning. (This is | |
5228 | identical to Kenner's fix to cp/g++.c.) | |
5229 | ||
5230 | * gbe/: New subdirectory, to contain .diff files for various | |
5231 | versions of the GNU CC back end. | |
5232 | ||
5233 | * gbe/README: New file. | |
5234 | * gbe/2.6.2.diff: New file. | |
5235 | ||
5236 | Tue Nov 8 10:23:10 1994 Dave Love <d.love@dl.ac.uk> | |
5237 | ||
5238 | * Make-lang.in: don't install as f77 as well as g77 to avoid | |
5239 | confusion with system's compiler (especially while testing) | |
5240 | ||
5241 | * g77.c (main): use -lf2c and -lm; fix sense of test for .f/.F files | |
5242 | ||
5243 | Fri Oct 28 09:45:00 1994 Craig Burley (burley@gnu.ai.mit.edu) | |
5244 | ||
5245 | * Version 0.5.1 released. | |
5246 | ||
5247 | * gcc.c: Invoke f771 instead of f-771. | |
5248 | ||
5249 | Fri Oct 28 02:00:44 1994 Craig Burley (burley@gnu.ai.mit.edu) | |
5250 | ||
5251 | * Version 0.5.0 released. | |
5252 | ||
5253 | Fri Oct 14 15:03:35 1994 Craig Burley (burley@gnu.ai.mit.edu) | |
5254 | ||
5255 | * Makefile.in: Handle the Fortran-77 front-end in a subdirectory. | |
5256 | * f-*: Move Fortran-77 front-end to f/*. |