OSDN Git Service

* config/alpha/vms.h (INCLUDE_DEFAULTS): Add /gnu/lib/gcc-lib/include.
[pf3gnuchains/gcc-fork.git] / gcc / ch / ChangeLog
1 2002-03-22  Zack Weinberg  <zack@codesourcery.com>
2
3         * grant.c: Always use REAL_VALUE_TO_DECIMAL; don't test
4         REAL_IS_NOT_DOUBLE.
5
6 2002-03-12  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
7
8         * decl.c (chill_tree_code_type, chill_tree_code_length,
9         chill_tree_code_name): Delete.
10         (tree_code_type, tree_code_length, tree_code_name): Define.
11         (init_decl_processing): Don't try to copy into the various
12         tree_code arrays.
13
14 2002-02-27  Zack Weinberg  <zack@codesourcery.com>
15
16         * ch-tree.h, decl.c: Delete traditional-mode-related code
17         copied from the C front end but not used, or used only to
18         permit the compiler to link.
19
20 2002-01-11  Craig Rodrigues  <rodrigc@gcc.gnu.org>
21
22         PR other/5299
23         * decl.c (layout_enum): Fix spelling mistake of "than".
24         * inout.c (check_text_length): Same.
25
26 2001-12-20  Joseph S. Myers  <jsm28@cam.ac.uk>
27
28         * config-lang.in (diff_excludes): Remove.
29
30 2001-12-15  Joseph S. Myers  <jsm28@cam.ac.uk>
31
32         * expr.c: Use "built-in" spelling in messages.
33
34 2001-12-15  Joseph S. Myers  <jsm28@cam.ac.uk>
35
36         * decl.c, parse.c, typeck.c: Use American spelling in messages.
37
38 2001-12-10  Joseph S. Myers  <jsm28@cam.ac.uk>
39
40         * chill.texi: Don't condition menus on @ifinfo.
41
42 2001-12-04  Zack Weinberg  <zack@codesourcery.com>
43
44         * Makefile.in: Don't set ALL.  Delete @cross_defines@,
45         @cross_overrides@, @build_overrides@ stanzas.  INTERNAL_CFLAGS
46         is now @CROSS@ -DIN_GCC; update comment.
47
48 2001-12-03  Neil Booth  <neil@daikokuya.demon.co.uk>
49
50         * actions.c: Remove leading capital from diagnostic messages, as
51         per GNU coding standards.
52         * decl.c: Similarly.
53         * expr.c: Similarly.
54         * inout.c: Similarly.
55         * lang.c: Similarly.
56         * loop.c: Similarly.
57         * nloop.c: Similarly.
58         * parse.c: Similarly.
59         * satisfy.c: Similarly.
60         * tasking.c: Similarly.
61         * tree.c: Similarly.
62         * typeck.c: Similarly.
63
64 2001-11-29  Joseph S. Myers  <jsm28@cam.ac.uk>
65
66         * Make-lang.in (CHILL.generated-manpages): New dummy target.
67
68 2001-10-31  Joseph S. Myers  <jsm28@cam.ac.uk>
69
70         * ChangeLog, actions.c, ch-tree.def, decl.c, except.c, inout.c,
71         tasking.c, typeck.c: Fix spelling errors.
72
73 2001-10-29  Zack Weinberg  <zack@codesourcery.com>
74
75         * convert.c, inout.c, loop.c, nloop.c, tasking.c, timing.c,
76         typeck.c: Use /* */ for all commentary, not #if 0 ... #endif.
77         Change the nested comments this creates to // notation.
78         Un-double apostrophes.
79
80 Sat Sep 22 09:15:08 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
81
82         * Make-lang.in (cc1chill): Add attribs.o.
83
84 2001-08-18  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
85
86         * tree.c (TYPE_HASH): Moved to ../tree.h.
87
88 2001-08-11  Zack Weinberg  <zackw@panix.com>
89
90         * lex.c: Don't include setjmp.h.
91
92 2001-08-09  Richard Henderson  <rth@redhat.com>
93
94         * grant.c (chill_finish_compile): Use target hooks instead of
95         assemble_constructor.
96
97 2001-08-06  Richard Henderson  <rth@redhat.com>
98
99         * grant.c (chill_finish_compile): Pass a symbol_ref and priority
100         to assemble_constructor.
101
102 2001-07-19  Neil Booth  <neil@daikokuya.demon.co.uk>
103
104         * Makefile.in (lex.o): No dependence on dwarfout.h.
105         * lex.c: Don't include dwarfout.h.
106
107 2001-07-10  Jan van Male  <jan.vanmale@fenk.wau.nl>
108
109         * ch-tree.h: Remove prototype for combine_parm_decls, unused
110         function.
111
112 2001-06-28  Gabriel Dos Reis  <gdr@merlin.codesourcery.com>
113
114         * lang.c: #include diagnostic.h
115         (chill_print_error_function): Add a dummy `diagnostic_context *'.
116         * Makefile.in (lang.o): Depend on diagnostic.h
117
118 2001-06-10  Gabriel Dos Reis  <gdr@codesourcery.com>
119
120         * decl.c: #include diagnostic.h
121         * actions.c: #include diagnostic.h
122         * Makefile.in (actions.o): Depend on diagnostic.h
123         (decl.o): Depend on diagnostic.h
124
125 2001-06-02  Joseph S. Myers  <jsm28@cam.ac.uk>
126
127         * chill.texi: Move contents to just after title page.
128
129 2001-05-23  Theodore Papadopoulo  <Theodore.Papadopoulo@sophia.inria.fr>
130
131         * Make-lang.in (dvi): Use ch/chill.dvi not chill.dvi.
132         (ch/chill.dvi): Use TEXI2DVI instead of custom tex calls.  Create
133         the dvi file in the ch directory.
134
135 2001-05-26  Zack Weinberg  <zackw@stanford.edu>
136
137         * configure: Remove obsolete file.
138
139 2001-05-25  Sam TH  <sam@uchicago.edu>
140
141         * ch-tree.h tasking.h: Fix header include guards.
142
143 2001-05-20  Joseph S. Myers  <jsm28@cam.ac.uk>
144
145         * Make-lang.in (chill.dvi): Remove bogus dependencies.  Don't cd
146         to ch; include both $(srcdir)/ch and $(srcdir) in TEXINPUTS.
147         Don't move chill.dvi after creating it.  Fixes PR other/567 and
148         PR other/1018.
149
150 Fri Feb 23 15:28:39 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
151
152         * decl.c (set_block): Set NAMES and BLOCKS from BLOCK.
153
154 2001-02-15  Jim Meyering  <meyering@lucent.com>
155
156         * Make-lang.in (CHILL.install-common): Depend on `installdirs'.
157         (CHILL.install-info): Likewise.
158
159 Sun Feb  4 15:52:44 2001  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
160
161         * convert.c (convert): Call abort instead of fatal.
162         * except.c (pop_handler, chill_check_no_handlers): Likewise.
163         * expr.c (chill_expand_expr): Likewise.
164         * parse.c (peek_token_, pushback_token, require): Likewise.
165         * grant.c (write_grant_file): Call fatal_io_error instead of
166         pfatal_with_name.
167         * lex.c (init_parse, same_file, yywrap): Likewise.
168         * lang.c (GNU_xref_begin, GNU_xref_end): Deleted.
169         * lex.c (convert_bitstring): Delete check for alloca failure.
170
171 2001-01-28  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
172
173         * ch-tree.h (integer_minus_one_node): Moved to top level gcc
174         directory.
175
176         * decl.c (integer_minus_one_node): Likewise.
177         (init_decl_processing): Don't set integer_minus_one_node.
178
179 2001-01-27  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
180
181         * Makefile.in: Remove all dependencies on defaults.h.
182         * decl.c: Don't include defaults.h.
183         * timing.c: Likewise.
184
185 2000-12-08  Joseph S. Myers  <jsm28@cam.ac.uk>
186
187         * Make-lang.in (CHILL.info): Depend on info files in source
188         directory.
189         (ch/chill.info): Build info files in source directory.
190         (CHILL.install-info): Install info files from source directory.
191
192 2000-12-07  Zack Weinberg  <zack@wolery.stanford.edu>
193
194         * lex.c: Don't bother checking whether ISUPPER(c) before
195         calling TOLOWER(c).  Don't bother checking whether isascii(c)
196         before testing ISSPACE(c); ISSPACE(c) includes '\n'.
197
198 2000-12-06  Rodney Brown  <RodneyBrown@mynd.com>
199
200         * actions.h: Standarize copyright statement.
201         * except.c inout.c lang.c lex.c lex.h loop.c nloop.c: Likewise.
202         * parse.c tasking.c tasking.h timing.c xtypeck.c: Likewise.
203
204 2000-11-07  Joseph S. Myers  <jsm28@cam.ac.uk>
205
206         * actions.c (check_missing_cases), typeck.c (build_chill_slice,
207         build_chill_cast): Use memset () instead of bzero ().
208
209 2000-11-05  Joseph S. Myers  <jsm28@cam.ac.uk>
210
211         * Make-lang.in (CHILL.distdir): Remove.
212
213 2000-11-02  Geoffrey Keating  <geoffk@cygnus.com>
214
215         * Make-lang.in: Remove 'CYGNUS LOCAL' markers.
216         * Makefile.in: Likewise.
217         * configure: Likewise.
218
219 2000-10-07  Joseph S. Myers  <jsm28@cam.ac.uk>
220
221         * Makefile.in ($(srcdir)/hash.h): Refer to GNU FTP site for
222         updated gperf.
223
224 2000-10-05  Richard Henderson  <rth@cygnus.com>
225
226         * decl.c (finish_chill_function): Don't init can_reach_end.
227
228 2000-09-10  Zack Weinberg  <zack@wolery.cumb.org>
229
230         * decl.c, timing.c: Include defaults.h if not already included.
231         Don't define the *_TYPE_SIZE macros.
232         * Makefile.in: Update dependencies.
233
234 2000-08-29  Zack Weinberg  <zack@wolery.cumb.org>
235
236         * inout.c (add_enum_to_list): Use DECL_NAME directly, don't get
237         its IDENTIFIER_POINTER and immediately call get_identifier on it.
238         * lex.c (yywrap): Constify a char *.
239
240 2000-08-24  Mark Mitchell  <mark@codesourcery.com>
241
242         * Make-lang.in (cc1chill): Don't depend on c-iterate.o.
243
244 2000-08-21  Nix  <nix@esperi.demon.co.uk>
245
246         * lang-specs.h: Do not process -o or run the assembler if
247         -fsyntax-only.
248
249 2000-08-07  Kazu Hirata  <kazu@hxi.com>
250
251         * decl.c: Fix a comment typo.
252
253 2000-08-04  Zack Weinberg  <zack@wolery.cumb.org>
254
255         * Make-lang.in (cc1chill): Depend on $(BACKEND), not stamp-objlist.
256         * Makefile.in (cc1chill): Link with $(BACKEND).  Define BACKEND,
257         eliminate C_OBJS (was commented out), OBJS, OBJDEPS.
258
259 2000-07-31  Zack Weinberg  <zack@wolery.cumb.org>
260
261         * lang-specs.h: Rename cpp to cpp0 and/or tradcpp to tradcpp0.
262
263 Mon Jul 31 07:58:31 2000  Casper Dik <Casper.Dik@holland.sun.com>
264
265         * Makefile.in: Remove naked "^L".
266
267 2000-07-13  Zack Weinberg  <zack@wolery.cumb.org>
268
269         * lang-specs.h: Use the new named specs.  Remove unnecessary braces.
270
271 2000-06-13  Jakub Jelinek  <jakub@redhat.com>
272
273         * decl.c (init_decl_processing): Set TYPE_USER_ALIGN.
274         (layout_enum): Set DECL_USER_ALIGN resp. TYPE_USER_ALIGN.
275         * typeck.c (layout_chill_range_type): Set TYPE_USER_ALIGN.
276         (apply_chill_field_layout): Set DECL_USER_ALIGN.
277         (layout_chill_struct_type): Set TYPE_USER_ALIGN.
278
279 Tue Jun 13 15:30:46 2000  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
280
281         * Make-lang.in (CHILL.install-common): Use $(INSTALL_SCRIPT), not
282         $(INSTALL_PROGRAM) for chill.install.
283
284 2000-06-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
285
286         * Makefile.in (EXPR_H): New dependency variable.
287         (actions.o, expr.o): Use EXPR_H.
288         (lang.o): Depend on RTL_H and EXPR_H.
289
290         * lang.c: Include rtl.h and expr.h.
291         (lang_get_alias_set): Mark parameter with ATTRIBUTE_UNUSED.
292
293 2000-06-04  Philipp Thomas  <pthomas@suse.de>
294
295         * Makefile.in(INTLLIBS): New macro.
296         (LIBS): Add INTLLIBS.
297         (DEPLIBS): Likewise.
298         * config-lang(outputs): Specify ch/Makefile.
299
300 Sat Jun  3 15:31:07 2000  Jeffrey A Law  (law@cygnus.com)
301
302         * chill.texi (INFO-DIR-ENTRY): Fix chill entry.
303
304 2000-06-02  Richard Henderson  <rth@cygnus.com>
305
306         * lang.c (lang_get_alias_set): New.
307
308 Sat May 27 11:24:26 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
309
310         * lang.c (deep_const_expr): Use first_rtl_op.
311         * satisfy.c (satisfy): Use TREE_CODE_LENGTH.
312
313 2000-05-18  Chris Demetriou  <cgd@netbsd.org>
314
315         * Makefile.in (hash.h): Delete a redundant use of gawk and sed.
316
317 Wed May 17 17:27:44 2000  Andrew Cagney  <cagney@b1.cygnus.com>
318
319         * decl.c (c_decode_option): Update -Wall unused flags by
320         calling set_Wunused.
321         (poplevel): Replace warn_unused with warn_unused_label.
322
323 2000-05-09  Zack Weinberg  <zack@wolery.cumb.org>
324
325         * ch-tree.h: Update prototypes.  Remove prototypes for
326         functions declared elsewhere.
327         * decl.c (define_label): Constify filename parameter.
328         * grant.c (globalize_decl, set_default_grant_file): Constify
329         local char * variables.  Don't declare
330         first_global_object_name or asm_out_file.
331         * lang.c (chill_real_input_filename): Constify.
332         * lex.c (init_parse): Constify parameter and return value.
333         * parse.c: Don't declare input_filename.
334         (ch_expand_asm_operands): Constify filename parameter.
335         (parse_multi_dimension_case_action): Constify local char *.
336         * satisfy.c (safe_satisfy_decl): Constify local char *.
337
338 2000-05-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
339
340         * ch-tree.h (init_function_start): Constify.
341
342 2000-04-18  Zack Weinberg  <zack@wolery.cumb.org>
343
344         * ch/lex.c: Remove references to cccp.c.
345
346 2000-04-03  Zack Weinberg  <zack@wolery.cumb.org>
347
348         * lang-specs.h: Pass -fno-show-column to the preprocessor.
349
350 Thu Mar 30 06:32:51 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
351
352         * expr.c (chill_expand_expr): Pass bit alignment to emit_block_move.
353
354 Sat Mar 25 09:12:10 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
355
356         * actions.c (check_missing_cases): BYTES_NEEDED is HOST_WIDE_INT.
357         * typeck.c (expand_constant_to_buffer): Use int_byte_position.
358         (extract_constant_from_buffer): Likewise.
359
360 Fri Mar 17 08:09:14 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
361
362         * typeck.c (min_precision): New function.
363         (build_chill_slice): Use host_integerp and tree_low_cst.
364         (expand_constant_to_buffer): Likewise and also int_bit_position.
365         LO is unsigned HOST_WIDE_INT
366         (build_chill_array_ref_1): Make `i' be HOST_WIDE_INT; use tree_low_cst.
367         (extract_constant_from_buffer): Sizes are now HOST_WIDE_INT.
368         Use host_integerp and tree_low_cst.
369         (build_chill_bin_type): Use host_integerp and tree_low_cst.
370         (layout_chill_range_type): Use tree_int_cst_sgn, compare_tree_int,
371         tree_low_cst, and min_precision.
372         (apply_chill_array_layout): Cleanups for types of variables
373         and use tree_int_cst_sgn, compare_tree_int, and tree_low_cst.
374         (apply_chill_field_layout): Likewise.
375
376 2000-03-07  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
377
378         * grant.c (globalize_decl): Constify a char*.
379
380 Mon Mar  6 17:52:48 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
381
382         * actions.c (chill_convert_for_assignment): INDEX is unsigned
383         HOST_WIDE_INT.
384         * ch-tree.h (DECL_NESTING_LEVEL): Use TREE_INT_CST_HIGH since unsigned.
385         * except.c (chill_handle_on_labels): ALTERNATIVE is unsigned.
386         Use compare_tree_int.
387         (expand_goto_except_cleanup): Likewise.
388
389 2000-03-01  Martin von Loewis  <loewis@informatik.hu-berlin.de>
390
391         * decl.c (current_function_decl): Move to toplev.c.
392
393 Mon Feb 28 08:12:26 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
394
395         * ch-tree.h (DECL_ACTION_NESTING_LEVEL): Use new tree union name.
396         * decl.c (finish_struct): Don't clear DECL_FIELD_SIZE.
397         * typeck.c (make_chill_struct_type): Likewise.
398         (apply_decl_field_layout): General cleanup.
399         Set DECL_SIZE instead of DECL_FIELD_SIZE.
400
401 Sun Feb 27 16:40:33 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
402
403         * actions.c (chill_convert_for_assignment): Don't use size_binop
404         for things that aren't sizes.
405         (expand_varying_length_assignment): Likewise.
406         * convert.c (digest_array_tuple, convert): Likewise.
407         * typeck.c (build_chill_slice, smash_dummy_type): Likewise.
408         (build_chill_slice_with_range): Likewise.
409         (build_chill_slice_with_length): Likewise.
410         (build_array_from_set): Adjust types for size_binop.
411         * expr.c (build_concat_expr, build_chill_repetition_op): Likewise.
412         (build_chill_sizeof): Use TYPE_SIZE_UNIT.
413         * tree.c (build_string_type): Pass proper type to size_binop.
414
415 Sat Feb 19 18:43:13 2000  Richard Kenner  <kenner@vlsi1.ultra.nyu.edu>
416
417         * decl.c (layout_enum): Set DECL_SIZE_UNIT.
418         * satisfy.c (safe_satisfy_decl): Likewise.
419
420 2000-02-15  Jonathan Larmour  <jlarmour@redhat.co.uk>
421
422         * lang-specs.h: Add new __GNUC_PATCHLEVEL__ define to default spec.
423
424 2000-02-15  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
425
426         * grant.c: Don't declare `version_string'.
427
428 2000-02-11  Nathan Sidwell  <nathan@acm.org>
429
430         * decl.c (init_decl_processing): Remove duplicate decl of
431         set_alignment.
432
433 2000-02-11  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
434
435         * expr.c (compare_records): Delete maximum_field_alignment declaration.
436         * inout.c (inout_init): Likewise.
437         (build_chill_gettextaccess): Likewise.
438         (build_enum_tables): Likewise.
439         * lang.c: Likewise.
440         * satisfy.c (satisfy): Likewise.
441         * tasking.c (build_tasking_struct): Likewise.
442         (build_tasking_message_type): Likewise.
443         * typeck.c (build_init_struct): Likewise.
444
445         * except.c (emit_setup_handler): Make save_maximum_field_alignment
446         unsigned int to match maximum_field_alignment.
447         * inout.c (inout_init): Likewise.
448         (build_chill_gettextaccess): Likewise.
449         (build_enum_tables): Likewise.
450         * tasking.c (build_tasking_struct): Likewise.
451         (build_tasking_message_type): Likewise.
452         * typeck.c (build_init_struct): Likewise.
453
454 2000-02-10  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
455
456         * except.c (maximum_field_alignment): Remove duplicate declaration.
457
458 2000-01-17  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
459
460         * All files: PROTO -> PARAMS.
461
462 2000-01-10  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
463
464         * lex.c: Include tm_p.h.
465
466 2000-01-04  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
467
468         * actions.c (update_else_range_for_int_const): Initialize
469         variables `lowval' and `highval'.
470         (update_else_range_for_range): Likewise for `low_range_val' and
471         `high_range_val'.
472
473 1999-12-11  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
474
475         * typeck.c (apply_chill_array_layout, apply_chill_field_layout):
476         Avoid the use of ANSI string concatenation.
477
478         * expr.c (chill_expand_case_expr): Likewise.
479
480 1999-11-23  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
481
482         * expr.c (build_chill_function_call): Don't call a variadic
483         function with a non-literal format string.
484
485         * grant.c (write_spec_module): Likewise.
486
487         * parse.c (require, expect): Likewise.
488
489         * tasking.c (get_struct_type_name, get_struct_debug_type_name,
490         get_tasking_code_name, get_struct_variable_name,
491         get_process_wrapper_name, build_start_process): Likewise.
492
493         * typeck.c (valid_array_index_p): Likewise.
494
495 Sun Oct 31 22:33:33 1999  Jeffrey A Law  (law@cygnus.com)
496
497         * Makefile.in (convert.o, typeck.o): Depend on output.h
498         * convert.c: Include output.h.
499         * typeck.c: Include output.h.
500         (initializer_constant_valid_p): Delete fucntion.
501         * ch-tree.h (initializer_constant_valid_p): Delete prototype.
502
503 1999-10-26  Mark Mitchell  <mark@codesourcery.com>
504
505         * ch-tree.h (remember_end_note): Remove prototype.
506         * decl.c (poplevel): Don't call remember_end_note.
507
508 Fri Sep 24 10:48:10 1999  Bernd Schmidt  <bernds@cygnus.co.uk>
509
510         * ch-tree.h (builtin_function): Don't declare.
511         * decl.c (builtin_function): New arg CLASS.  Arg FUNCTION_CODE now of
512         type int.  All callers changed.
513         Set the builtin's DECL_BUILT_IN_CLASS.
514
515 1999-09-20  Nick Clifton  <nickc@cygnus.com>
516
517         * lang.c (lang_decode_option): Extend comment.
518
519 1999-09-16  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
520
521         * lex.c (maybe_downcase, getlc, handle_generic_pragma,
522         check_newline): Use uppercase ctype macro from system.h.
523
524 1999-09-15  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
525
526         * actions.c (warn_unhandled): Use xstrdup, not xmalloc/strcpy.
527
528 Fri Sep 10 10:32:32 1999  Bernd Schmidt  <bernds@cygnus.co.uk>
529
530         * ch-tree.h: Delete declarations for all tree nodes now moved to
531         global_trees.
532         * expr.c: Likewise.
533         * typeck.c: Likewise.
534         * decl.c: Delete their definitions.
535         (init_decl_processing): Call build_common_tree_nodes and
536         build_common_tree_nodes_2 instead of building their nodes here.
537         Use set_sizetype instead of assigning sizetype.
538
539 1999-09-08  Bruce Korb  autogen@linuxbox.com
540
541         * Makefile.in: Give the gperf user a hint about why "gperf -F" fails.
542
543 Tue Sep  7 15:59:56 1999  Dave Brolley  <brolley@cygnus.com>
544
545         * parse.h: Undefine DELAY if it's defined.
546         (PACK,NOPACK,POS): Remove erroneous comments regarding these tokens.
547         Also, move them to their proper place alphabetically.
548
549 1999-09-04  Mark Mitchell  <mark@codesourcery.com>
550
551         * Make-lang.in (cc1chill): Depend on ggc-callbacks.o.
552         * Makefile.in (CHILL_OBJS): Add ggc-callbacks.o.
553
554 1999-08-30  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
555
556         * parse.c (language_string): Constify.
557
558 1999-08-30  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
559
560         * Makefile.in (LIBS, LIBDEPS): Link with & depend on libiberty.a.
561         Remove hacks for stuff which now comes from libiberty.
562
563 1999-08-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
564
565         * lang.c (chill_print_error_function): Constify a char*.
566
567 1999-08-29  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
568
569         * Makefile.in (ch-version.c): Constify a char*.
570
571         * actions.c (id_cmp, warn_unhandled, adjust_return_value,
572         update_else_range_for_int_const, update_else_range_for_range,
573         update_else_range_for_range_expr, update_else_range_for_type,
574         compute_else_range, check_case_value,
575         chill_handle_case_label_range,
576         chill_handle_multi_case_label_range,
577         chill_handle_multi_case_else_label, chill_handle_multi_case_label,
578         chill_handle_multi_case_label_list print_missing_cases): Add
579         static prototypes.
580         (build_exception_variant): Cast the function argument of qsort.
581         (build_rts_call, warn_unhandled, chill_convert_for_assignment,
582         adjust_return_value, chill_expand_result,
583         build_multi_case_selector_expression, print_missing_cases):
584         Constify a char*.
585         (print_missing_cases): Introduce an intermediary non-const ptr.
586         Add brackets and indent.
587
588         * ch-tree.h (maybe_building_objc_message_expr,
589         maybe_objc_comptypes, comptypes_record_hook): Remove declarations.
590         (push_handler, pop_handler): Add prototypes.
591         (builtin_function, valid_array_index_p,
592         build_chill_exception_decl, build_rts_call,
593         chill_convert_for_assignment, display_int_cst,
594         build_chill_addr_expr, check_have_mode, get_identifier3,
595         build_chill_string, register_seize_path, get_unique_identifier,
596         add_taskstuff_to_list, gnuchill_version): Constify a char*.
597         (finish_chill_function): Add void prototype argument.
598
599         * convert.c (convert_to_reference, convert_to_boolean,
600         convert_to_char, base_type_size_in_bytes, remove_tree_element,
601         check_ps_range, digest_powerset_tuple, digest_structure_tuple,
602         digest_array_tuple, convert1): Add static prototypes.
603         (base_type_size_in_bytes): Hide unused function.
604         (display_int_cst, digest_array_tuple): Constify a char*.
605
606         * decl.c (set_nesting_level, make_chill_variants, fix_identifier,
607         proclaim_decl, maybe_acons, push_scope_decls, pop_scope_decls,
608         build_implied_names, bind_sub_modules, layout_array_type,
609         do_based_decl, handle_one_level, label_value_cmp,
610         find_implied_types): Add static prototypes.
611         (boolean_code_name, chill_tree_code_type, chill_tree_code_name):
612         Constify a char*.
613         (layout_chill_variants): Cast the function argument of qsort.
614         (start_chill_function, fix_identifier, init_decl_processing):
615         Constify a char*.
616         (init_decl_processing): Prefer memcpy over bcopy to avoid casts.
617         Use xcalloc instead of xmalloc/bzero.
618         (builtin_function, build_chill_exception_decl,
619         finish_outer_function): Constify a char*.
620
621         * except.c (start_handler_array, finish_handler_array): Add static
622         prototypes.
623
624         * expr.c (chill_expand_expr, chill_expand_case_expr,
625         check_arglist_length, internal_build_compound_expr,
626         is_really_instance, invalid_operand, invalid_right_operand,
627         build_chill_abstime, build_allocate_memory_call,
628         build_allocate_global_memory_call, build_return_memory,
629         build_chill_duration, build_chill_floatcall,
630         build_allocate_getstack, build_chill_allocate,
631         build_chill_getstack, build_chill_terminate, build_chill_inttime,
632         build_chill_lower_or_upper, build_max_min,
633         build_chill_pred_or_succ, expand_packed_set, fold_set_expr,
634         build_compare_set_expr, scalar_to_string, build_concat_expr,
635         build_compare_string_expr, compare_records, string_char_rep,
636         build_boring_bitstring): Add static prototypes.
637         (check_have_mode, chill_expand_expr, build_chill_floatcall,
638         build_allocate_getstack, build_max_min, build_chill_function_call,
639         expand_packed_set, build_compare_set_expr, build_chill_addr_expr,
640         string_char_rep): Constify a char*.
641
642         * gperf (hash, in_word_set): Add prototypes.
643
644         * grant.c (newstring, strfree, append, prepend,
645         grant_use_seizefile, decode_layout, grant_array_type,
646         grant_array_type_selective, get_tag_value,
647         get_tag_value_selective, print_enumeral, print_enumeral_selective,
648         print_integer_type, find_enum_parent, print_integer_selective,
649         print_struct, print_struct_selective, print_proc_exceptions,
650         print_proc_tail, print_proc_tail_selective, find_in_decls,
651         in_ridpointers, grant_seized_identifier, globalize_decl,
652         grant_one_decl_selective, compare_memory_file, search_in_list,
653         really_grant_this): Add static prototypes.
654         (newstring, append, prepend, grant_use_seizefile,
655         print_integer_type, decode_constant, grant_one_decl_selective,
656         header_template): Constify a char *.
657
658         * inout.c (add_enum_to_list, build_chill_io_list_type,
659         build_io_types, declare_predefined_file, build_access_part,
660         textlocation_mode, check_assoc, assoc_call, check_transfer,
661         connect_process_optionals, connect_text, connect_access,
662         check_access, check_text, get_final_type_and_range,
663         process_io_list, check_format_string, get_max_size,
664         check_exprlist): Add static prototypes.
665         (declare_predefined_file, check_assoc, assoc_call, check_transfer,
666         check_access, check_text, process_io_list): Constify a char*.
667
668         * lang.c (deep_const_expr, chill_print_error_function): Add static
669         prototypes.
670
671         * lex.c (close_input_file, maybe_number, string_or_char): Constify
672         a char*.
673         (ch_lex_init, skip_directive, same_file, getlc, yywrap,
674         yy_refill): Add static prototypes.
675         (build_chill_string, same_file, register_seize_path): Constify a
676         char*.
677
678         * lex.h (finish_chill_seizes): Remove unused prototypes.
679
680         * loop.c (build_temporary_variable, maybe_make_for_temp,
681         get_unique_identifier): Constify a char*.
682
683         * parse.c (ch_parse_init, check_end_label, end_function,
684         build_prefix_clause, PEEK_TOKEN, peek_token_, pushback_token,
685         forward_token_, require, check_token, expect, define__PROCNAME__):
686         Add static prototypes.
687         (build_prefix_clause, expect): Constify a char*.
688         (parse_expression, parse_primval, parse_untyped_expr,
689         parse_opt_untyped_expr, parse_opt_actions): Add void prototype
690         argument.
691         (parse_opt_name_string, parse_simple_name_string,
692         parse_name_string, parse_defining_occurrence, parse_name,
693         parse_optlabel, parse_opt_end_label_semi_colon, parse_modulion,
694         parse_spec_module, parse_semi_colon,
695         parse_defining_occurrence_list, parse_mode_definition,
696         parse_mode_definition_statement, parse_synonym_definition,
697         parse_synonym_definition_statement, parse_on_exception_list,
698         parse_on_alternatives, parse_loc_declaration,
699         parse_declaration_statement, parse_optforbid, parse_postfix,
700         parse_postfix_list, parse_rename_clauses, parse_opt_prefix_clause,
701         parse_grant_statement, parse_seize_statement,
702         parse_param_name_list, parse_param_attr, parse_formpar,
703         parse_formparlist, parse_opt_result_spec, parse_opt_except,
704         parse_opt_recursive, parse_procedureattr, parse_proc_body,
705         parse_procedure_definition, parse_processpar,
706         parse_processparlist, parse_process_definition,
707         parse_signal_definition, parse_signal_definition_statement,
708         parse_then_clause, parse_opt_else_clause, parse_expr_list,
709         parse_range_list_clause, pushback_paren_expr, parse_case_label,
710         parse_case_label_list, parse_case_label_specification,
711         parse_single_dimension_case_action,
712         parse_multi_dimension_case_action, parse_case_action,
713         parse_asm_operands, parse_asm_clobbers, ch_expand_asm_operands,
714         parse_asm_action, parse_begin_end_block, parse_if_action,
715         parse_iteration, parse_delay_case_event_list,
716         parse_delay_case_action, parse_do_action, parse_receive_spec,
717         parse_receive_case_action, parse_send_action, parse_start_action,
718         parse_call, parse_tuple_fieldname_list, parse_tuple_element,
719         parse_opt_element_list, parse_tuple, parse_operand6,
720         parse_operand5, parse_operand4, parse_operand3, parse_operand2,
721         parse_operand1, parse_operand0, parse_case_expression,
722         parse_then_alternative, parse_else_alternative,
723         parse_if_expression, parse_index_mode, parse_set_mode, parse_pos,
724         parse_step, parse_opt_layout, parse_field_name_list,
725         parse_fixed_field, parse_variant_field_list,
726         parse_variant_alternative, parse_field, parse_structure_mode,
727         parse_opt_queue_size, parse_procedure_mode, parse_program,
728         parse_pass_1_2): Add static prototypes.
729         (parse_process_definition): Remove extra argument in function call.
730         (parse_range_list_clause): Likewise.
731
732         * satisfy.c (satisfy, cycle_error_print, safe_satisfy_decl,
733         satisfy_list, satisfy_list_values): Add static prototype.
734         (safe_satisfy_decl): Cast DECL_TASKING_CODE_DECL() to (tree).
735
736         * tasking.c (make_process_struct): Remove unused prototype.
737         (validate_process_parameters, get_struct_variable_name,
738         decl_tasking_code_variable, get_struct_debug_type_name,
739         get_process_wrapper_name, build_tasking_enum,
740         build_tasking_message_type, build_receive_signal_case_label,
741         build_receive_buffer_case_label, build_receive_buffer_case_end,
742         build_receive_signal_case_end): Add static prototypes.
743         (struct_name, struct_debug_name, data_name, wrapper_name,
744         get_struct_type_name, get_struct_debug_type_name,
745         get_tasking_code_name, get_struct_variable_name,
746         get_process_wrapper_name): Constify a char*.
747         (validate_process_parameters, get_struct_variable_name,
748         decl_tasking_code_variable): Hide unused functions.
749         (build_start_process, add_taskstuff_to_list, build_queue_length):
750         Constify a char*.
751
752         * tree.c (make_powerset_type): Add static prototype.
753         (get_identifier3, build_alias_decl, decl_check_rename): Constify a
754         char*.
755
756         * typeck.c (extract_constant_from_buffer,
757         expand_constant_to_buffer, build_empty_string,
758         make_chill_pointer_type, make_chill_range_type,
759         apply_chill_array_layout, field_decl_cmp, make_chill_struct_type,
760         apply_chill_field_layout): Add static prototype.
761         (valid_array_index_p, extract_constant_from_buffer,
762         chill_expand_tuple): Constify a char*.
763         (layout_chill_struct_type): Cast the function argument of qsort.
764
765 1999-08-09  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
766
767         * actions.c (lang_identify): Constify a char*.
768
769         * lang.c (chill_print_error_function): Likewise.
770         (lang_init): Remove redundant prototype for `print_error_function'.
771
772 1999-07-25  Richard Henderson  <rth@cygnus.com>
773
774         * decl.c (va_list_type_node): New.
775
776 1999-06-25  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
777
778         * Make-lang.in (CHILL.stage1): Depend on stage1-start.
779         (CHILL.stage2): Likewise for stage2-start.
780         (CHILL.stage3): Likewise for stage3-start.
781         (CHILL.stage4): Likewise for stage4-start.
782
783 Tue May 18 00:21:34 1999  Zack Weinberg  <zack@rabi.phys.columbia.edu>
784
785         * lang-specs.h: Define __GNUC__ and __GNUC_MINOR__ only if -no-gcc
786         was not given.
787
788 1999-05-10 18:21 -0400  Zack Weinberg  <zack@rabi.phys.columbia.edu>
789
790         * lang-specs.h: Pass -$ to the preprocessor.
791
792 Tue May  4 14:52:53 1999  Dave Brolley  <brolley@cygnus.com>
793
794         * actions.c (chill_expand_assignment): Use powersetlen to calculate the
795         length of an array of packed bits.
796
797 Tue Apr 20 23:37:01 1999   Nathan Sidwell  <nathan@acm.org>
798
799         * Make-lang.in (ch/chill.info): Put MAKEINFO parameters in correct
800         order.
801
802 Wed Apr 14 21:07:30 1999  Mumit Khan  <khan@xraylith.wisc.edu>
803
804         * config-lang.in (compilers): Add exeext.
805         (stagestuff): Likewise.
806
807 Fri Apr  2 15:49:44 1999  Jeffrey A Law  (law@cygnus.com)
808
809         * Make-lang.in (CHILL_FLAGS_TO_PASS): Do not pass $(CC).
810
811 Wed Mar 31 10:44:47 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
812
813         * Makefile.in (hash.h): Generate using gperf language 'C', not
814         'KR-C', so gperf uses the `const' keyword on strings.
815
816         * gperf (resword): Const-ify a char*.
817
818 Sun Mar 28 00:30:36 1999  Jeffrey A Law  (law@cygnus.com)
819
820         * Make-lang.in (CHILL.dvi): New target.
821         (CHILL.mostlyclean): Remove remnants of old runtime library structure.
822
823 1999-02-20  Craig Burley  <craig@jcb-sc.com>
824
825         * Make-lang.in (CHILL.info): Depend on intermediate ch/chill.info
826         target instead of the chill.texi file.
827         (ch/chill.info): New target, depends on the chill.texi source file.
828         Its command writes ch/chill.info instead of chill.info.
829         (CHILL.install-info): Install from ch/chill.info instead of
830         chill.info.
831         If any ch/chill.info* files exist, delete *all* chill.info* files
832         in $infodir first, not just the ones corresponding to the
833         files to be installed (just in case the docs get smaller).
834
835 Sun Jan 31 20:34:29 1999  Zack Weinberg  <zack@rabi.columbia.edu>
836
837         * decl2.c: Don't define flag_no_ident here.  Don't process
838         -f(no-)ident here.
839         * ch-tree.h: Don't declare flag_no_ident here.
840         * lang-specs.h: Map -Qn to -fno-ident.
841
842 Tue Jan 19 23:24:36 1999  Jeffrey A Law  (law@cygnus.com)
843
844         * Makefile.in (typeck.o): Depend on insn-codes.h.
845         * actions.c (chill_handle_multi_case_label): Initialize "expr".
846         * decl.c (poplevel): Initialize "block_previously_created".
847         * expr.c (chill_expand_expr): Initialize "size0" and "size1".
848         (fold_set_expr): Initialize "buffer1".
849         * inout.c (process_io_list): Initialize "to_assign".
850         (check_exprlist): Initialize "result".
851         * parse.c (expand_expr): Declare.
852         (parse_multi_dimension_case_action): Initialize "end_case_label".
853         * tasking.c (build_start_process): Initialize "struct_type_node".
854         * typeck.c (apply_chill_field_layout): Initialize "word".
855         (type_for_mode); Unconditionally cast RHS & LHS to ints to shut up
856         signed/unsigned comparison warning.
857
858 Mon Jan 18 11:55:06 1999  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
859
860         * ch-tree.h: Remove conflicting prototypes for pedwarn,
861         warning_with_decl, and make_dcl_rtl.
862
863 Sun Jan 17 21:53:23 1999  Jeffrey A Law  (law@cygnus.com)
864
865         * Makefile.in: Do not put ^Ls at the start of a line.
866
867 Wed Jan  6 02:53:38 1999  Jeffrey A Law  (law@cygnus.com)
868
869         * Makefile.in: Add some missing $(exeext).  Remove some obsolete
870         runtime stuff.
871         * Make-lang.in: Similarly.
872
873 Tue Nov 24 09:57:34 1998  Jeffrey A Law  (law@cygnus.com)
874
875         * Makefile.in (lex.c): Do not depend on hash.h.
876         (lex.o): Depend on hash.h.
877
878 Mon Oct 19 12:13:47 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
879
880         * Makefile.in (lex.o): Depend on dwarfout.h.
881
882         * lang-specs.h: Add missing braces in initializer.
883
884         * lex.c: Include dwarfout.h, if DWARF_DEBUGGING_INFO is defined.
885
886 Thu Oct 15 09:25:21 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
887
888         * expr.c (build_chill_card): Use &&, not &, when comparing truth
889         values.
890
891         * parse.c (parse_spec_module): Remove unused variable
892         `module_name', but preserve function call from initialization.
893         (parse_operand6): Mark variable `location' with ATTRIBUTE_UNUSED.
894
895         * inout.c (init_text_location): Remove unused variable `textlength'.
896
897 Wed Oct 14 22:19:48 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
898
899         * typeck.c (build_chill_cast): Fix typo in assignment statement.
900
901         * tasking.c (build_signal_descriptor): Use IDENTIFIER_POINTER()
902         when printing a `tree'.
903
904 Fri Oct  9 13:01:23 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
905
906         * ch-tree.h (build_delay_case_end): Remove unused parameter.
907         (build_receive_case_end): Likewise.
908         (check_queue_size): Likewise.
909
910         * parse.c: Callers changed.
911
912         * satisfy.c: Likewise.
913
914         * tasking.c (build_receive_buffer_case_end): Remove unused
915         parameter `label_cnt'.
916         (build_receive_signal_case_end): Likewise.
917         (build_receive_case_end): Likewise.
918         (build_delay_case_end): Likewise.
919         (check_queue_size): Likewise for parameter `type'.
920         All callers changed.
921
922 Thu Oct  8 05:57:41 1998  Jeffrey A Law  (law@cygnus.com)
923
924         * typeck (type_for_mode): Only return TItype nodes when
925         HOST_BITS_PER_WIDE_INT is >= 64 bits.
926         (type_for_size): Similarly.
927         * decl.c (intTI_type_node, unsigned_intTI_type_node): Only declare
928         when HOST_BITS_PER_WIDE_INT is >= 64 bits.
929         (init_decl_processing): Only create TItype nodes when
930         HOST_BITS_PER_WIDE_INT is >= 64 bits.
931
932 Wed Oct  7 12:19:21 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
933
934         * Makefile.in (hash.h): Add -L KR-C -F ', 0, 0, 0' flags to gperf.
935         (hash.h): Regenerate using gperf 2.7.1 (19981006 egcs).
936
937 Thu Oct  1 10:43:45 1998  Nick Clifton  <nickc@cygnus.com>
938
939         * lex.c: Replace occurrences of HANDLE_SYSV_PRAGMA with
940         HANDLE_GENERIC_PRAGMAS.
941         (handle_generic_pragma): New function: Parse generic pragmas.
942
943 Wed Sep 30 20:22:34 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
944
945         * parse.c (emit_label): Fix return-type of prototype.
946
947 Wed Sep 30 19:41:36 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
948
949         * actions.c (chill_handle_multi_case_label): Always return a value
950         in function returning non-void.
951
952         * except.c: Include OS headers before any local ones.
953
954         * typeck.c (layout_chill_range_type): Change type of variable
955         `negprecision' to int.
956         (apply_chill_array_layout): Initialize variables `stepsize' and
957         `start_bit'.
958         (layout_chill_struct_type): Change type of variable `min_align' to
959         unsigned int.
960         (smash_dummy_type): Change name of variable `main' to `main_tree'.
961
962 Wed Sep 30 19:24:41 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
963
964         * actions.c (id_cmp): Do pointer arithmetic as `long' not `int' to
965         ensure enough bits for calculation.
966
967         * ch-tree.h (check_text_length): Remove unused parameter.
968
969         * convert.c (display_int_cst): Cast a HOST_WIDE_INT argument to
970         function sprintf into the appropriate type for printing.
971
972         * decl.c (print_lang_decl): Use HOST_WIDE_INT_PRINT_DEC as the
973         format specifier.
974         (print_mode): Likewise.
975         (init_decl_processing): Cast the arguments of bcopy/bzero to char *.
976
977         * grant.c (grant_array_type): Use HOST_WIDE_INT_PRINT_DEC as
978         the format specifier.
979
980         * inout.c (check_text_length): Remove unused parameter `type'.
981         (build_chill_associate): Initialize variables `arg1', `arg2',
982         `arg3', `arg4' and `arg5'.
983         (build_chill_modify): Likewise.
984         (scanformcont): Change type of variable `curr' to `unsigned char'.
985
986         * lex.c (maybe_downcase): Cast the argument of `tolower' to
987         `unsigned char'.
988
989         * satisfy.c (satisfy): Remove unused parameter in call to
990         `check_text_length'.
991
992         * tasking.c (generate_tasking_code_variable): Pass a HOST_WIDE_INT
993         as a `long' in call to function `error'.
994         (decl_tasking_code_variable): Likewise.
995
996 Wed Sep 30 19:03:02 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
997
998         * grant.c (decode_decl_selective): Cast switch's enum argument to
999         an int.
1000         (really_grant_this): Add default case in switch.
1001
1002         * typeck.c (chill_resulting_class): Add default cases in switch.
1003         Also add `break' statements after each case.
1004
1005 Tue Sep 29 21:37:33 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1006
1007         * ch-tree.h (build_compare_expr): Change first argument's type
1008         from `enum chill_tree_code' to `enum tree_code'.
1009         (build_compare_discrete_expr): Likewise.
1010
1011         * expr.c (build_compare_set_expr): Likewise.
1012         (build_compare_string_expr): Likewise.
1013         (build_compare_expr): Likewise.
1014         (build_compare_discrete_expr): Likewise.  Also add default case in
1015         switch statement.
1016         (compare_int_csts): Add default case in switch statement.
1017
1018 Sun Sep 20 11:02:55 1998  Robert Lipe  <robertl@dgii.com>
1019
1020         * except.c: Include system.h.
1021
1022         * Makefile.in (except.o): Depend on system.h.
1023
1024 Sun Sep 20 09:25:13 1998  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
1025
1026         * Makefile.in (actions.o, convert.o, decl.o, expr.o, lang.o,
1027         lex.o, loop.o, parse.o, satisfy.o, timing.o, tasking.o, tree.o,
1028         typeck.o): Depend on system.h and toplev.h.
1029         (except.o): Depend on toplev.h.
1030         (grant.o): Depend on system.h, toplev.h and output.h.
1031
1032         * actions.c: Include system.h and toplev.h.  Remove redundant
1033         prototypes.
1034         (build_cause_exception): Add default case in switch.
1035         (update_else_range_for_range): Add parentheses around && within ||.
1036         (chill_handle_multi_case_label_list): Remove unused variable
1037         `selector_value'.
1038         (print_missing_cases): Reconcile format specifiers vs arguments in
1039         calls to sprintf.
1040
1041         * ch-tree.h: Don't include stdio.h.  Wrap prototypes using FILE*
1042         with macro BUFSIZ.  Add missing prototypes.
1043
1044         * convert.c: Include system.h and toplev.h.  Remove redundant
1045         prototypes.
1046         (convert): Remove unused variable `errstr'.
1047
1048         * decl.c: Include system.h and toplev.h.  Remove redundant
1049         prototypes.
1050         (builtin_scope): Add missing initializers.
1051         (clear_scope): Likewise.
1052         (allocate_lang_decl): Mark parameter `t' with ATTRIBUTE_UNUSED.
1053         (copy_lang_decl): Likewise for parameter `node'.
1054         (c_decode_option): Likewise for parameter `argc'.
1055         (push_extern_function): Likewise for parameter `granting'.
1056         (switch_to_pass_2): Hide declaration of errorcount/sorrycount.
1057         (pushdecl): Remove unused variable `t'.
1058         (lookup_name_current_level): Make static and hide.
1059         (lookup_name_for_seizing): Make static.
1060         (finish_decl): Remove unused variable `type'.
1061         (maybe_build_cleanup): Mark parameter `decl' with ATTRIBUTE_UNUSED.
1062         (complete_array_type): Mark parameters `type', `initial_value' and
1063         `do_default' with ATTRIBUTE_UNUSED.
1064         (start_struct): Mark parameter `name' with ATTRIBUTE_UNUSED.
1065         (start_enum): Likewise.
1066         (shadow_record_fields): Remove unused variables `type' and `parent'.
1067
1068         * except.c: Include toplev.h.  Remove redundant prototypes.
1069
1070         * expr.c: Include system.h and toplev.h.  Don't define NULL.
1071         Remove redundant prototypes.
1072         (internal_build_compound_expr): Mark parameter `first_p' with
1073         ATTRIBUTE_UNUSED.
1074         (build_allocate_getstack): Remove unused variable `init'.
1075         (build_chill_pred_or_succ): Likewise for variable `limit'.
1076         (varying_to_slice): Likewise for variable `doamin' [sic].
1077         (finish_chill_binary_op): Likewise for variables `code0' and
1078         `code1'.  Remove unused label `finish'.  Add explicit braces to
1079         avoid ambiguous `else'.
1080         (build_chill_addr_expr): Remove extra parameter in call to `error'.
1081         (build_chill_unary_op): Remove unused variables `class' and `type0'.
1082         (powersetlen): Remove unused variables `domain' and `temp'.
1083
1084         * grant.c: Include system.h, toplev.h and output.h.  Don't handle
1085         strchr/strrchr.  Remove redundant prototypes.
1086         (decode_constant_selective): Remove unused variables `op' and `wrk'.
1087         (push_granted): Mark parameters `name' and `decl' with
1088         ATTRIBUTE_UNUSED.
1089
1090         * inout.c: Include system.h and toplev.h.  Remove redundant
1091         prototypes.
1092         (textlocation_mode): Use &&, not &, when comparing two truth
1093         values.
1094         (scanformcont): Remove unused label `do_the_action'.
1095
1096         * lang.c: Include system.h and toplev.h.  Remove redundant
1097         prototypes.
1098         (lookup_interface): Mark parameter `arg' with ATTRIBUTE_UNUSED.
1099         (maybe_objc_comptypes): Likewise for parameters `lhs' and `rhs'.
1100         (lang_print_xnode): Likewise for parameters `file', `node' and
1101         `indent'.
1102         (lang_decode_option): Explicitly declare `explicit_ignore_case'.
1103         (incomplete_type_error): Mark parameters `value' and `type' with
1104         ATTRIBUTE_UNUSED.
1105
1106         * lex.c: Include system.h and toplev.h.  Remove redundant
1107         prototypes.  Don't handle strchr/strrchr.  Use CAPITALIZED
1108         versions of ctype macros from system.h.  Cast ctype arguments to
1109         unsigned char when necessary.
1110         (last_token, RETURN_TOKEN): Hide definition.
1111         (push_back): Remove unused function.
1112         (readstring): Change variable `i' to unsigned.
1113         (yywrap): Remove unused variable `node'.
1114
1115         * loop.c: Include system.h and toplev.h.  Remove redundant
1116         prototypes.
1117         (chill_unsigned_type): Hide prototype and definition.
1118         (begin_loop_scope): Remove unused variable `firstp'.
1119         (nonvalue_begin_loop_scope): Likewise.
1120
1121         * parse.c: Include system.h and toplev.h.  Remove redundant
1122         prototypes.
1123         (quasi_signal): Hide.
1124         (PEEK_TOKEN): Change return type to `enum terminal'.
1125         (parse_mode_definition_statement): Remove unused variable `names'.
1126         (parse_formpar): Remove unused parameter `in_spec_module'.  All
1127         callers changed.
1128         (parse_formparlist): Likewise.
1129         (parse_processpar): Remove unused variable `parms'.
1130         (parse_definition): Add explicit braces to avoid ambiguous `else'.
1131         (parse_multi_dimension_case_action): Initialize variable
1132         `begin_test_label'.  Remove unused variable `new_test'.
1133         (parse_case_action): Remove unused variable `caseaction_flag'.
1134         (parse_asm_clobbers): Remove unused variable `expr'.
1135         (parse_delay_case_action): Initialize variable `label_cnt'.
1136         (parse_action): Make function static.
1137         (parse_tuple_element): Remove unused variable `list'.
1138         (parse_primval): Add default case in switch.
1139         (parse_variant_alternative): Remove unused variables `x' and
1140         `variant_fields'.
1141
1142         * satisfy.c: Include system.h and toplev.h.  Remove redundant
1143         prototypes.
1144
1145         * tasking.c Include system.h and toplev.h.  Remove redundant
1146         prototypes.
1147         (data_name): Hide.
1148         (get_struct_variable_name): Likewise.
1149         (validate_process_parameters): Mark parameter `parms' with
1150         ATTRIBUTE_UNUSED.
1151         (build_start_process): Initialize variable `tuple'.
1152         (build_receive_buffer_case_end): Remove unused variable `buffer_ptr'.
1153
1154         * timing.c: Include system.h and toplev.h.
1155         (build_after_timeout_start): Remove unused variable `goto_where'.
1156
1157         * tree.c: Include system.h and toplev.h.  Remove redundant
1158         prototypes.
1159
1160         * typeck.c: Include system.h and toplev.h.  Remove redundant
1161         prototypes.
1162         (extract_constant_from_buffer): Make function static.  Add
1163         explicit braces to avoid ambiguous `else'.
1164         (expand_constant_to_buffer): Likewise.
1165         (build_chill_slice): remove unused variable `is_static'.
1166         (chill_compatible): Add explicit braces to avoid ambiguous `else'.
1167         (apply_chill_array_layout): Remove unused variable `offset'.
1168         (smash_dummy_type): Remove unused variable `save_lang_specific'.
1169         (initializer_constant_valid_p): Add default case in switch.
1170
1171 Mon Sep 14 16:46:36 1998  Dave Brolley  <brolley@cygnus.com>
1172
1173         * typeck.c (build_chill_slice): Always use TYPE_DOMAIN to get the
1174         domain type of the array.
1175
1176         * expr.c (build_chill_function_call): Remove redundant call to
1177         chill_convert_to_assignment
1178
1179 Thu Sep 10 17:52:36 1998  Dave Brolley  <brolley@cygnus.com>
1180
1181         * actions.c (chill_convert_for_assignment): Make a copy of the result
1182         node before modifying it.
1183
1184 Sat Sep  5 16:55:37 1998  John Carr  <jfc@mit.edu>
1185
1186         * Make-lang.in: Comment ^L characters.  Sun make doesn't like them.
1187
1188 Sat Sep  5 23:49:50 1998  Jeffrey A Law  (law@cygnus.com)
1189
1190         * Makefile.in (INCLUDES): Update after recent reorganization at the
1191         toplevel gcc directory.
1192
1193 Sat Sep  5 22:25:51 1998  Richard Henderson  <rth@cygnus.com>
1194
1195         * Makefile.in: Update dependencies for top-level gcc files that moved.
1196
1197 Sat Sep  5 02:21:08 1998  Jeffrey A Law  (law@cygnus.com)
1198
1199         * Makefile.in: Tweak to avoid building runtime.  It's built
1200         elsewhere now.
1201
1202 Thu Sep  3 15:32:03 1998  Dave Brolley  <brolley@cygnus.com>
1203
1204         * typeck.c (layout_chill_range_type): set TYPE_SIZE_UNIT.
1205
1206 Wed Sep 02 09:25:29 1998  Nick Clifton  <nickc@cygnus.com>
1207
1208         * lex.c (check_newline):  Change how HANDLE_PRAGMA is called.
1209         Generate warning messages if unknown pragmas are encountered.
1210         (pragma_getc): New function: retrieves characters from the
1211         input stream.  Defined when HANDLE_PRAGMA is defined.
1212         (pragma_ungetc): New function: replaces characters back into the
1213         input stream.  Defined when HANDLE_PRAGMA is defined.
1214
1215 Mon Aug 31 15:35:16 1998  Dave Brolley  <brolley@cygnus.com>
1216
1217         * decl.c (layout_chill_variants): Calculate nlables properly.
1218
1219 Mon Jul 27 17:21:01 1998  Dave Brolley  <brolley@cygnus.com>
1220
1221         * typeck.c (apply_chill_array_layout): Don't set TYPE_SIZE of the
1222         element type.
1223
1224 Mon Jul 13 14:20:12 1998  Nick Clifton  <nickc@cygnus.com>
1225
1226         * lang-options.h: Format changed to match changes in gcc/toplev.c
1227         to implement a --help option.
1228
1229 Wed Jul  8 02:58:35 1998  Jeffrey A Law  (law@cygnus.com)
1230
1231         * lang.c (lang_init_options): New function.
1232
1233 Wed Jun 10 12:08:09 1998  Dave Brolley  <brolley@cygnus.com>
1234
1235         * lang-options.h: Remove -I.
1236         * ch-tree.h (c_decode_option): New argc/argv interface.
1237         * decl.c (c_decode_option): New argc/argv interface.
1238         * lang.c (lang_decode_option):  New argc/argv interface.
1239
1240 Wed May 27 10:33:41 1998  Dave Brolley  <brolley@cygnus.com>
1241
1242         * actions.c (chill_handle_multi_case_label): Arguments 1 and 2 to
1243         chill_handle_multi_case_label_range were reversed.
1244
1245         * Make-lang.in (chill): Use the correct gcc in the driver script.
1246
1247 Thu May 21 14:40:44 1998  Dave Brolley  <brolley@cygnus.com>
1248
1249         * convert.c (digest_array_tuple): Move conversion to
1250         chill_convert_for_assignment.
1251
1252         * actions.c (chill_convert_for_assignment): Allow conversion of array
1253         constructor to bitstring constructor for assignment to array of packed bits.
1254
1255 Thu May 14 13:57:51 1998  Dave Brolley  <brolley@cygnus.com>
1256
1257         * Make-lang.in (chill-runtime): Depend on stmp-headers to build float.h.
1258
1259 Wed May 13 14:07:51 1998  Dave Brolley  <brolley@cygnus.com>
1260
1261         * typeck.c (build_chill_slice): Adjust slice index to account for the
1262         lower bound of the array.
1263
1264         * actions.c (chill_expand_assignment): Convert function arguments to the
1265         correct types.
1266         (chill_expand_assignment): Ditto.
1267
1268 Mon May 11 16:20:57 1998  Dave Brolley  <brolley@cygnus.com>
1269
1270         * typeck.c (build_chill_slice): Propogate the TYPE_PACKED setting
1271         of the array_type to the slice_type.
1272         (build_chill_slice): Use SLICE_EXPR to represent a slice of an array
1273         of bits.
1274
1275         * loop.c (build_loop_iterator): Disallow location enumeration for
1276         bit-packed arrays.
1277
1278         * convert.c (digest_array_tuple): Allow conversion of an array tuple
1279         to a bitstring for assignment to a packed array of bits.
1280
1281 Mon May  4 16:28:58 1998  Dave Brolley  <brolley@cygnus.com>
1282
1283         * ch-tree.def (PACKED_ARRAY_REF): New tree code.
1284         * typeck.c (build_chill_array_ref_1): Build PACKED_ARRAY_REF if array is packed.
1285         (chill_location): Handle PACKED_ARRAY_REF.
1286         (apply_chill_array_layout): Allow PACK for arrays of single bits.
1287         * expr.c (chill_expand_expr): Expand PACKED_ARRAY_REF.
1288         (invalid_operand): Check PACKED_ARRAY_REF operands.
1289         * actions.c (chill_expand_assignment): Expand PACKED_ARRAY_REF.
1290
1291 Thu Apr 23 15:33:20 1998  Dave Brolley  <brolley@cygnus.com>
1292
1293         * typeck.c (apply_chill_field_layout): Only integral fields can be packed
1294         to the bit level.
1295
1296 Tue Apr 21 14:30:10 1998  Jeffrey A Law  (law@cygnus.com)
1297
1298         * decl.c (intTI_type_node, unsigned_intTI_type_node): Define.
1299         (init_decl_processing): Handle TI types.
1300         * typeck.c (intTI_type_node, unsigned_intTI_type_node): Declare.
1301         (type_for_size): Handle TI types.
1302         (type_for_mode): Handle TI types.
1303
1304 Mon Apr 20 13:12:26 1998  Dave Brolley  <brolley@cygnus.com>
1305
1306         * typeck.c (layout_chill_struct_type): Don't promote bitfield types to
1307         int.
1308
1309         * actions.c (chill_convert_for_assignment): Check that the rhs is not
1310         a type declaration.
1311
1312 Tue Apr 14 13:17:44 1998  Dave Brolley  <brolley@cygnus.com>
1313
1314         * lex.c (init_parse): Now returns char* containing the filename.
1315
1316         * typeck.c (get_type_precision): Declare.
1317         (apply_chill_field_layout): Use the minimum number of bits necessary to
1318         represent discrete types as the natural length of the field.
1319
1320 Thu Apr  9 12:46:55 1998  Dave Brolley  <brolley@cygnus.com>
1321
1322         * lex.c (finput): Move definition here from toplev.c
1323         (init_parse): New function replaces init_lex.
1324         (init_parse): Add code to open source file.
1325         (finish_parse): New function.
1326         (close_input_file): File was being closed more than once.
1327
1328         * lang.c (finput): Declare.
1329         * ch-tree.h (init_lex): Remove.
1330
1331
1332 Wed Apr  8 14:47:33 1998  Dave Brolley  <brolley@cygnus.com>
1333
1334         * actions.c (compute_else_range): Fix loop index error.
1335         (chill_handle_multi_case_label_range): Move error checking to
1336         chill_handle_multi_case_label.
1337         (chill_handle_multi_case_else_label): Convert ELSE range values to
1338         the type of the corrersponding CASE selector.
1339
1340 Wed Apr  8 13:02:50 1998  Jeffrey A Law  (law@cygnus.com)
1341
1342         * actions.c (sizetype_tab): Do not declare.
1343         * lang.c (lang_print_xnode): New function.
1344
1345 Mon Mar 23 14:43:06 1998  Dave Brolley  <brolley@cygnus.com>
1346
1347         * grant.c (decode_layout): New function.
1348         (grant_array_type): Call decode_layout to export layout information to
1349         the grant file.
1350         (decode_decl): Ditto
1351
1352 Fri Mar 20 16:06:41 1998  Dave Brolley  <brolley@cygnus.com>
1353
1354         * parse.c (parse_tuple_element): Call had arguments in wrong order.
1355
1356 Thu Mar 19 13:42:33 1998  Dave Brolley  <brolley@cygnus.com>
1357
1358         * typeck.c (apply_chill_array_layout): Use
1359         TYPE_PRECISION (chill_integer_type_node) in stead of BITS_PER_WORD for
1360         the word size.
1361
1362 Wed Mar 18 16:25:48 1998  Dave Brolley  <brolley@cygnus.com>
1363
1364         * typeck.c (apply_chill_field_layout): Only set DECL_BIT_FIELD for discrete
1365         fields.
1366
1367         * parse.c (parse_multi_dimension_case_action): Call emit_line_note at the
1368         proper places.
1369
1370 Tue Mar 17 14:16:08 1998  Dave Brolley  <brolley@cygnus.com>
1371
1372         * parse.c (gen_label_rtx): Declare before use.
1373         (emit_jump): Declare before use.
1374         (emit_label): Declare before use.
1375         (parse_case_label_list): Pass in CASE selector so we can mark it as having
1376         an (ELSE) label if necessary.
1377         (parse_case_label_specification): Pass in the CASE selector list so that
1378         the CASE selectors can be passed to parse_case_label_list.
1379         (parse_multi_dimension_case_action): Modify to generate branching code in
1380         one pass.
1381         (parse_case_expression): Compute (ELSE) range before generating CASE expression.
1382         (parse_variant_alternative): Remove error for (ELSE) specified.
1383
1384         * expr.c (check_case_selector_list): Preserve TREE_PURPOSE of selector list.
1385
1386         * decl.c (layout_chill_variants): Add code to check compatibility of ranges
1387         and discrete mode names.
1388
1389         * ch-tree.h (ELSE_LABEL_SPECIFIED): New Chill specific flag.
1390
1391         * actions.h (build_multi_case_selector_expression): Make it extern.
1392         (chill_handle_multi_dimension_case_label): Remove.
1393         (compute_else_ranges): New function.
1394
1395         * actions.c (update_else_range_for_int_const): New function.
1396         (update_else_range_for_range): New function.
1397         (update_else_range_for_range_expr): New function.
1398         (update_else_range_for_type): New function.
1399         (compute_else_range): New function.
1400         (compute_else_ranges): New function.
1401         (chill_handle_multi_case_else_label): New function
1402         (chill_handle_multi_case_label_range): Don't generate tests for conditions
1403         which are always true or false.
1404         (chill_handle_multi_case_label): Ditto.
1405         (chill_handle_multi_case_label): Implement (ELSE) label support.
1406         (chill_handle_multi_case_label): First argument is now the selector tree not
1407         its VALUE.
1408         (chill_handle_multi_dimension_case_label): Removed.
1409         (build_chill_multi_dimension_case_expr): List of CASE alternatives is no longer
1410         reversed on entry, so reverse it here.
1411
1412 Tue Mar 10 15:02:26 1998  Dave Brolley  <brolley@cygnus.com>
1413
1414         * actions.c (chill_handle_multi_case_label_range): Add more error checking.
1415         (chill_handle_multi_case_label): Implement (*) for multi dimensional CASE.
1416         (chill_handle_multi_case_label): Improve Error handling.
1417
1418 Mon Mar  9 12:39:00 1998  Dave Brolley  <brolley@cygnus.com>
1419
1420         * actions.c (chill_handle_multi_case_label_range): Added.
1421         (chill_handle_multi_case_label): Add support for discrete ranges and
1422         discrete modes.
1423
1424         * typeck.c (apply_chill_array_layout): Added more error checking.
1425         (apply_chill_field_layout): Added more error checking.
1426
1427 Wed Mar  4 16:08:26 1998  Dave Brolley  <brolley@cygnus.com>
1428
1429         * convert.c (convert): Call build_simple_array_type with new argument.
1430
1431         * ch-tree.h(build_simple_array_type): Add argument for array layout.
1432
1433         * typeck.c (build_chill_slice): Call build_simple_array_type with new argument.
1434         (build_simple_array_type): Attach array layout to TYPE_ATTRIBUTES.
1435         (apply_chill_array_layout): New function to implement array layout.
1436         (layout_chill_array_type): Call apply_chill_array_layout and reset
1437         TYPE_ATTRIBUTES to NULL_TREE.
1438         (build_chill_array_type): Extend to handle one array layout per index mode.
1439         (smash_dummy_type): Call build_simple_array_type with new argument.
1440
1441         * satisfy.c (satisfy): Call SATISFY on array layout tree.
1442
1443 Wed Feb 25 14:36:41 1998  Dave Brolley  <brolley@cygnus.com>
1444
1445         * typeck.c (next_struct_offset): Added.
1446         (apply_chill_field_layout): New function to check and apply PACK, NOPACK,
1447         or POS layout to a structure field.
1448         (layout_chill_struct_type): Add call to apply_chill_field_layout.
1449
1450         * satisfy.c (satisfy): Call satisfy recursively to handle the expressions
1451         in the field layout tree.
1452
1453         * parse.c (pack_warn_printed): Remove.
1454         (nopack_warn_printed): Remove.
1455         (step_warn_printed): Remove.
1456         (pos_warn_printed): Remove.
1457         (parse_opt_layout): Remove warnings about POS, STEP, PACK and NOPACK usage.
1458
1459         * decl.c (grok_chill_fixedfields): Check for POS specified for a list of
1460         field declarations.
1461
1462 Thu Feb 19 17:33:06 1998  Dave Brolley  <brolley@cygnus.com>
1463
1464         * parse.c (parse_opt_layout): Generate syntax errors in pass 1 only.
1465         (parse_opt_mode): Removed incorrect comment about association of array
1466         layouts with nested array elements.
1467         (parse_opt_mode): Allow for one layout per index mode specified.
1468
1469 Wed Feb 18 23:48:57 1998  Richard Henderson  <rth@cygnus.com>
1470
1471         * Make-lang.in (cc1chill): Kill lingering bc-opcode.h dependency.
1472
1473 Wed Feb 18 17:35:05 1998  Dave Brolley  <brolley@cygnus.com>
1474
1475         * parse.c (parse_field): Get rid of warning for multiple case selectors.
1476
1477         * decl.c (layout_chill_variants): Fix loop indexing error.
1478
1479 Mon Feb 16 15:54:47 1998  Dave Brolley  <brolley@cygnus.com>
1480
1481         * parse.c (parse_case_expression): Remove code which checked for
1482         unimplemented (ELSE) label.
1483         (parse_case_expression): Add code to handle multi dimensional case
1484         expression.
1485
1486         * expr.c (check_case_selector_list): Fixed to return a list of the
1487         selectors which were checked.
1488         (chill_expand_case_expr): Remove "sorry" message for multi dimension
1489         case.
1490         (chill_expand_case_expr): Reverse order of case alternatives.
1491         (chill_expand_case_expr): Add "error" message for multiple case
1492         selectors.
1493
1494         * actions.h (build_chill_multi_dimension_case_expr): Added.
1495
1496         * actions.c (build_multi_case_selector_expression): Renamed from
1497         build_multi_case_expression.
1498         (chill_handle_multi_dimension_case_label): Call above function by its
1499         new name.
1500         (build_chill_case_expr): Don't reverse the list elements here. It may
1501         not be necessary.
1502         (build_chill_multi_dimension_case_expr): New function implements multi
1503         dimensional case expression.
1504
1505 Thu Feb 12 15:44:50 1998  Dave Brolley  <brolley@cygnus.com>
1506
1507         * parse.c (parse_case_action): Implement multi-dimension CASE action.
1508         (parse_multi_dimension_case_action): Added.
1509         (parse_single_dimension_case_action): Added based on code moved from
1510         parse_case_action.
1511
1512         * expr.c (check_case_selector_list): Added.
1513
1514         * ch-tree.h (check_case_selector_list): Added.
1515
1516         * actions.h (chill_handle_single_dimension_case_label): Added.
1517         (chill_handle_multi_dimension_case_label): Added.
1518
1519         * actions.c (chill_handle_single_dimension_case_label): Added.
1520         (chill_handle_multi_case_label): Added.
1521         (chill_handle_multi_case_label_list): Added.
1522         (build_multi_case_expression): Added.
1523         (chill_handle_multi_dimension_case_label): Added
1524
1525 Fri Feb  6 16:43:41 1998  Dave Brolley  <brolley@cygnus.com>
1526
1527         * actions.c (sizetype_tab): Fix declaration to match gcc changes.
1528
1529 Thu Feb  5 14:03:00 1998  Dave Brolley  <brolley@cygnus.com>
1530
1531         * decl.c (chill_tree_code_type):  Change this to be an array of char like
1532         the tree_code_type in the rest of gcc.
1533
1534         * ch-tree.def (chill_tree_code_type): See decl.c.
1535
1536 Thu Jan 29 15:34:18 1998  Dave Brolley  <brolley@cygnus.com>
1537
1538         * tasking.c (error_with_decl): Correct prototype.
1539         (build_gen_ptype): Reverse arguments.
1540
1541         * lang.c (chill_real_input_filename): Add definition.
1542         (chill_print_error_function): Correct second argument.
1543         (lang_init): Set chill_real_input_filename.
1544
1545         * expr.c (NULL): Protect definition with #ifndef.
1546
1547         * decl.c (init_decl_processing): Don't allocate chill_tree_code_...
1548         (init_decl_processing): Change last argument to 'sizeof(char)'.
1549
1550
1551 Tue Nov 25 10:44:19 1997  Nick Clifton  <nickc@cygnus.com>
1552
1553         * Make-lang.in (mostlyclean): Use && to separate commands, so that
1554         if the directory change fails, the rule will not loop.
1555
1556 Mon Mar  3 12:08:19 1997  Fred Fish  <fnf@cygnus.com>
1557
1558         * Make-lang.in (CHILL_FLAGS_TO_PASS): Remove extraneous leading
1559         spaces and use single tab character on some lines.
1560         (cc1chill): Ditto.
1561
1562 Tue Nov 26 05:12:40 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1563
1564         * tasking.c (build_receive_buffer_case_label): Rework in a manner,
1565         that the buffer location gets evaluated only once, in
1566         build_receive_buffer_case_end.
1567
1568         * typeck.c (build_chill_bin_type): Rework.
1569         (layout_chill_range_type): Process BIN mode.
1570         (build_chill_array_type): Remove checking of layout. This is done
1571         at the parse.
1572
1573         * parse.c (parse_on_exception_list): Don't allow ON name:.
1574         (parse_opt_layout): Parse POS and STEP and return a tree instead
1575         of int.
1576
1577         * lex.c (init_lex), lex.h: Define and initialise RID_BIN.
1578
1579         * grant.c (print_integer_type): Take care of BIN.
1580
1581         * expr.c (build_chill_descr): Make descr static if requested
1582         location is static.
1583         (build_chill_length): Process text mode name and text location as
1584         described in Z.200/1992.
1585         (build_compare_expr): Don't allow < <= > >= for composite modes.
1586
1587         * decl.c (grok_chill_fixedfields): Remove checking of
1588         layout. This is done at the parser.
1589
1590         * convert.c (digest_structure_tuple): Take care of wrong (probably
1591         array) tuple. Printing error may cause sigsegv.
1592
1593         * ch-tree.h: Change prototypes of grok_chill_fixedfields and
1594         build_chill_array_type (layout is passed now as a tree instead of
1595         int).
1596
1597 Fri Nov 15 15:17:44 1996  Per Bothner  <bothner@deneb.cygnus.com>
1598
1599         * convert.c (display_int_cst):  Check that val is INTEGER_CST.
1600         (digest_array_tuple):  Some extra error checks (i.e. that indexes
1601         are constant).  If dynamic mode, result is not constant.
1602
1603 Mon Oct 28 12:48:06 1996  Jeffrey A Law  (law@cygnus.com)
1604
1605         * typeck.c (signed_or_unsigned_type): If the given type already
1606         as the correct signedness, then just return it.
1607
1608         * typeck.c ({un,}signed_type): If can't do anything, call
1609         signed_or_unsigned_type.
1610
1611 Fri Sep  6 02:50:08 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1612
1613         * typeck.c (build_chill_cast): In case of rangecheck, take care of
1614         constant expression (when defining a SYN).
1615
1616 Thu Sep  5 04:30:32 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1617
1618         * parse.c (define__PROCNAME__): New function to define a SYNONYM
1619         __PROCNAME__ (__procname__) which is a character string containing
1620         the name of the current procedure. This is quit the same as
1621         __FUNCTION__ in C.
1622         (parse_proc_body): Add call to define__PROCNAME__.
1623
1624         * typeck.c (chill_equivalent): Take care of NEWMODE'd procedure
1625         modes on one side and procedures on the other side..
1626
1627 Wed Jul 24 01:13:51 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1628
1629         * typeck.c: Replace all local variables and arguments named `index'
1630         with `idx', `index' gets replaced by `strchr' which makes debugging
1631         somehow difficult.
1632         (valid_array_index_p): New argument to indicate that we are processing
1633         LENGTH (varying string) on the lefthand side of an assignment. The
1634         index check is different in this case.
1635         (build_chill_cast): In case of expression conversion do an OVERFLOW
1636         check with the limits of the target mode.
1637
1638         * ch-tree.h: New prototype for valid_array_index_p.
1639
1640         * actions.c (expand_varying_length_assignment): Add new argument to
1641         call to valid_array_index_p to indicate we are processing
1642         LENGTH on the lefthand side of an assignment.
1643
1644         * loop.c: Rename loop_stack to loopstack to avoid clashes with
1645         global variable ../stmt.c:loop_stack.
1646
1647 Tue Jun 18 23:04:06 1996  Per Bothner  <bothner@deneb.cygnus.com>
1648
1649         * expr.c (resolve_component_ref):  Set TREE_SIDE_EFFECTS properly.
1650
1651 Mon Jun 10 15:01:51 1996  Per Bothner  <bothner@deneb.cygnus.com>
1652
1653         * typeck.c (build_chill_reference_type):  Copy novelty for reference.
1654         * satisfy.c (satisfy):  If REFERENCE_TYPE, copy novelty.
1655
1656 Thu May 30 04:55:27 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1657
1658         * typeck.c (valid_array_index_p): For varying character strings
1659         we must check if the index is less then the actual length instead
1660         of less equal.
1661
1662 Wed May 15 06:07:10 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1663
1664         * ch-tree.h: Add prototype for test_range.
1665
1666         * inout.c (process_io_list): Fix duplicate function call if
1667         writetext argument is a function returning a varying string.
1668
1669 Tue May 14 21:08:47 1996  Per Bothner  <bothner@deneb.cygnus.com>
1670
1671         Re-do string comparisons.  Old way could re-use temporary
1672         (SAVE_EXPR created for an argumnet is variable) prematurely.
1673         * ch-tree.def (STRING_EQ_EXPR, STRING_LT_EXPR):  New codes.
1674         * decl.c (init_decl_processing):  Remove __eqstring, __gestring,
1675         __gtstring, __lestring, __ltstring, __nestring declarations.
1676         * expr.c (build_char_array_expr):  Rename to build_compare_string_expr.
1677         Create STRING_EQ_EXPR, STRING_LT_EXPR nodes, instead of CALL_EXPRs.
1678         (chill_expand_expr):    Implement STRING_EQ_EXPR, STRING_LT_EXPR.
1679         (build_compare_expr):  Use new build_char_array_expr name.
1680
1681 Mon Apr  8 14:08:30 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1682
1683         Cleanup of April 5 fix:
1684         * actions.c (test_range):  New function.
1685         (check_range):  Simplify to use test_range.
1686         * convert.c (digest_powerset_tuple):  Move error message from here ...
1687         (check_ps_range):  ... to here.  Also, simplify to use test_range.
1688
1689 Fri Apr  5 03:41:05 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1690
1691         * convert.c (check_ps_range): New function to perform range check
1692         of powerset tuple elements. This is quite the same as check_range,
1693         however, the actions on rangefail are different.
1694         (digest_powerset_tuple): Call check_ps_range.
1695
1696         * loop.c (build_loop_iterator): Chaeck if location enumeration
1697         is requested for BOOLS(n) and print an error message.
1698
1699 Wed Mar  6 17:46:48 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1700
1701         * parse.c (parse_primval):  Emit error if !ignore (before: pass==2).
1702
1703         Implement parameterised array and string modes (using LANG_TYPE).
1704         * parse.c (parse_opt_mode):  Handle parameterized arrays and strings.
1705         * grant.c (decode_mode):  Support extended use of LANG_TYPE.
1706         * satisfy.c (cycle_error_print):  Ignore non-decls in chain.
1707         (safe_satisfy_decl):  No error if non-decl (pointer type) in cycle.
1708         (satisfy):  Return immediately if laid out non-pointer type.
1709         (satisfy case LANG_TYPE):  Handle paramertised mode.
1710         (satisfy case POINTER_TYPE/REFERENCE_TYPE):  Push type on chain;
1711         return immediately if already in chain.
1712         * typeck.c (smash_dummy_type):  Handle parameterized modes and CHAR(N).
1713         Change return type (can now return error_mark_node).
1714         (build_readonly_type):  Return return value from smash_dummy_type.
1715         * ch-tree.h:  Change smash_dummy_type return type.
1716
1717 Tue Mar  5 22:31:20 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1718
1719         * typeck.c (build_chill_slice):  Re-do index_type calculation.
1720         * typeck.c (layout_chill_range_type):  Use compare_int_csts rather
1721         than tree_int_cst_lt to avoid signed/unsigned problems.
1722
1723         * typeck.c (copy_novelty):  Use copy_node rather than build_type_node.
1724         * typeck.c (smash_dummy_type):  Use copy_novelty for NEWMODE of range.
1725
1726         * decl.c (init_decl_processing): More portable sizetype initialization.
1727
1728         * tree.c (build_string_type):  Generalize to also create bitstrings.
1729         Return error_mark_node if an argument is an ERROR_MARK.
1730         (build_bitstring_type):  Simplify - just call build_string_type.
1731
1732 Tue Mar  5 03:48:32 1996  Wilfried Moser  <moser@blues.cygnus.com>
1733
1734         * actions.c (warn_unhandled): Add missing assignment.
1735
1736         * loop.c (build_loop_iterator): In case of IN, check if
1737         expression has a mode, otherwise make an error.
1738
1739 Mon Mar  4 23:12:03 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1740
1741         *  convert.c (digest_powerset_tuple):  Check tuple elements
1742         for compatibility;  if compatible, call convert.
1743
1744 Thu Feb 29 23:39:54 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1745
1746         Simplify NOVELTY representation.
1747         * ch-tree.h (CH_NOVELTY):  Re-implement as plain TYPE_CONTEXT.
1748         (CH_NOVELTY_FLAG):  Removed.  (Just use CH_NOVELTY.)
1749         * decl.c (push_modedef):  Make copy even for SYNMODE.
1750         but not for internal typedefs (indicated by make_newmode==-1).
1751         * tasking.c:  Call push_modedef with make_newmode==-1.
1752         * typeck.c (chill_novelty):  Remove.
1753         (smash_dummy_type):  Removed unused event/buffer stuff.  Update.
1754         * grant.c (decode_decl), inout.c (build_io_types),
1755         expr.c (build_concat_expr), typeck.c (build_chill_slice, copy_novelty),
1756         tasking.c (build_instance_type):  Simplify using new CH_NOVELTY.
1757
1758         Solidify READ mode handling.
1759         * decl.c (do_decl, push_syndecl, start_chill_function):
1760         Possibly set TREE_READONLY for a VAR_DECL, CONST_DECL, or PARM_DECL.
1761         * typeck.c (build_chill_slice):  Set TREE_READONLY appropriately.
1762         (build_chill_array_ref_1, build_chill_bitref):  Likewise.
1763         (build_chill_cast):  Set TREE_READONLY depending on result type (only).
1764         * convert (convert_from_reference, convert):  Likewise.
1765         * expr.c (resolve_component_ref):  Set TREE_READONLY appropriately.
1766         (build_chill_function_call):  Error if OUT/INOUT arg is TREE_READONLY.
1767         * actions.c (chill_expand_assignment):  Also error if TREE_READONLY.
1768         Use convert_from_reference.
1769
1770 Thu Feb 29 11:14:09 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1771
1772         * parse.c (parse_do_action):  DO WITH expressions are evaluated in
1773         outer scope.  Also call save_if_needed.
1774         * decl.c (shadow_record_fields);  Fix and simplify.
1775
1776 Tue Feb 27 22:19:40 1996  Per Bothner  <bothner@cygnus.com>
1777
1778         * convert.c (display_int_cst):  Gereralize to wider range of ints.
1779
1780 Thu Feb 22 06:12:59 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1781
1782         * convert.c (digest_array_tuple): Take care of type == error_mark_node.
1783
1784         * decl.c (do_decl): In case of chill_varying_type_p, check if
1785         type of fixed part is error mark and do nothing in this case.
1786
1787         * lex.c (convert_bitstring): Don't complain when length of
1788         bitstring is 0 (BOOLS(0) is a valid mode).
1789
1790         * tree.c (layout_powerset_type): Add check for TYPE_MAX/MIN_VALUE
1791         (domain) is error mark.
1792
1793         * typeck.c (layout_chill_range_type): If lowvalue or highvalue ==
1794         error_mark_node, just return.
1795
1796 Tue Feb 20 00:01:10 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1797
1798         * parse.c (parse_variant_alternative): When checking for ELSE take
1799         care of tagless variants.
1800
1801 Mon Feb 19 05:54:45 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1802
1803         * parse.c (parse_case_action): Check if ELSE was specified
1804         in a case label list (this is only valid for array tuples).
1805         (parse_case_expression): Deto.
1806         (parse_variant_alternative): Deto.
1807
1808 Tue Feb 13 17:08:16 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1809
1810         * typeck.c (chill_location):  Cleanup.  Neither SLICE_EXPR nor
1811         BIT_FIELD_REF are referable, even if their base strings are.
1812
1813 Fri Feb  9 02:25:33 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1814
1815         * actions.c (chill_expand_result): Do CH_FUNCTION_SETS_RESULT after
1816         checking the expression.
1817
1818         * convert.c (convert): Set TREE_CONSTANT when taking the
1819         address of a function.
1820
1821         * decl.c (start_chill_function): Check if the mode is really
1822         a mode to avoid subsequent segfaults.
1823
1824         * typeck.c (string_assignment_condition): Add checking of
1825         bitstring length.
1826
1827 Thu Feb  8 01:37:59 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1828
1829         * actions.c (build_cause_exception): Print warning of unhandled
1830         exception only once for each exception.
1831
1832 Mon Feb  5 22:17:13 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1833
1834         * tree.c (discrete_count), ch-tree.h:  New function.
1835         * expr.c (build_concate_expr, build_chill_repetition_op,
1836         chill_expand_expr):  Use discrete_count;  make sure arguments
1837         to size_binop are sizetype.
1838         (powersetlen):  Trvialize using discrete_count.
1839
1840         * inout.c (process_io_list):  Use new assign_temp function.
1841         * inout.c (build_enum_tables):  Avoid taking address of array_ref,
1842         which sometimes gets optimized to a constant.
1843
1844         * expr.c (finish_chill_unary_op):  Call convert_to_class on argument.
1845         Remove some obsolete TREE_UNSIGNED stuff.
1846         * lex.c (convert_integer):  Removed more TREE_UNSIGNED stuff.
1847
1848 Thu Feb  1 15:11:20 1996  Doug Evans  <dje@charmed.cygnus.com>
1849
1850         * lex.c (check_newline): Return result of HANDLE_PRAGMA.
1851
1852 Wed Jan 31 17:13:25 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1853
1854         * decl.c (char_array_type_node, wchar_array_type_node):  Removed.
1855         (init_decl_processing):  Remove array_domain_type;  don't set
1856         char_array_type_node or wchar_array_type_node.
1857         * decl.c (init_decl_processing):  Use fixup_unsigned_type to
1858         simplify code to create boolean_type_node and char_type_node.
1859
1860 Mon Jan 29 14:20:10 1996  Doug Evans  <dje@charmed.cygnus.com>
1861
1862         * lex.c (check_newline): Pass character after `#pragma' to
1863         HANDLE_PRAGMA.  Don't call get_directive_line if at end of line.
1864
1865 Fri Jan 26 05:56:27 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1866
1867         * expr.c (build_chill_function_call): Add check and error for
1868         actual argument is a TYPE_DECL.
1869
1870         * parse.c (parse_set_mode): Print a warning if the set mode contains
1871         numbered and unnumbered set elements.
1872
1873 Wed Jan 24 05:10:08 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1874
1875         * Make-lang.in: Change GNUCHILL_VERSION to 1.5.2.
1876
1877         * decl.c (layout_enum): Add check for negative values if
1878         enum is numbered and duplicate values in an enum.
1879
1880 Mon Jan 15 06:21:52 1996  Wilfried Moser  <moser@rtl.cygnus.com>
1881
1882         * actions.c (chill_expand_assignment): Add check for lefthand side
1883         of an assignment is a location.
1884
1885         * ch-tree.def: Name of SET_IN_EXPR is really "set_in_expr" and
1886         not "concat_expr".
1887
1888         * expr.c (is_really_instance): New function to check if a datum
1889         is really an instance. CH_IS_INSTANCE_MODE seems to be to weak
1890         for this case.
1891         (build_chill_component_ref): call is_really_instance.
1892
1893 Wed Jan 10 13:47:14 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1894
1895         * ch-tree.h (TYPE_ARRAY_MAX_SIZE):  Removed;  now in ../tree.h.
1896
1897 Mon Jan  8 15:29:20 1996  Per Bothner  <bothner@kalessin.cygnus.com>
1898
1899         * expr.c (build_char_array_expr):  Add save_if_needed's if varying.
1900         Also, remove unused len0 and len1.
1901
1902 Mon Dec 11 17:36:44 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1903
1904         * inout.c (build_chill_associate, assoc_call, build_chill_readrecord,
1905         build_chill_getassociation, build_chill_getusage,
1906         build_chill_gettextrecord,  build_chill_gettextaccess:  Simplify
1907         - modify TREE_TYPE of CALL_EXPR, instead of building a CONVERT_EXPR.
1908
1909         * parse.c (parse_action):  Minor simplification.
1910
1911 Thu Dec  7 00:02:47 1995  Wilfried Moser  <moser@rtl.cygnus.com>
1912
1913         * parse.c (parse_action): In case of CALL, do a check if there
1914         is really a function call.
1915
1916 Tue Dec  5 05:06:02 1995  Wilfried Moser  <moser@rtl.cygnus.com>
1917
1918         * convert.c (display_int_cst): Fix printing of control sequence.
1919
1920 Thu Nov 30 21:07:57 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1921
1922         * grant.c (decode_constant, decode_constant_selective):  Make work
1923         for REAL_IS_NOT_DOUBLE case.
1924
1925         * decl.c (CHILL_INT_IS_SHORT):  New macro.
1926         (init_decl_processing):  Use CHILL_INT_IS_SHORT.
1927         Change name of integer_type_node from _cint to long.
1928
1929 Mon Nov 27 17:07:05 1995  Per Bothner  <bothner@kalessin.cygnus.com>
1930
1931         * loop.c (top_loop_end_check):  Check while condition *after*
1932         getting next powerset element.
1933
1934 Mon Nov 27 05:29:52 1995  Wilfried Moser  <moser@rtl.cygnus.com>
1935
1936         * parse.c (parse_receive_case_action): Fix typo in error message.
1937
1938         * convert.c (display_int_cst): Format characters like strings in
1939         grant.c(decode_constant).
1940
1941         * grant.c: Remove the old forbid stuff.
1942
1943         * lex.c (readstring): Fix reading of '^^'.
1944
1945         * parse.c (parse_procedure_mode): nreverse param_types.
1946
1947 Thu Nov 23 05:39:57 1995  Wilfried Moser  <moser@rtl.cygnus.com>
1948
1949         * actions.c (chill_expand_assignment): Check for assigning to
1950         location with non-value mode.
1951
1952         * ch-tree.h: New macro CH_TYPE_NONVALUE_P.
1953         Add new and change some prototypes.
1954
1955         * decl.c (init_nonvalue_struct): New function to generate
1956         initialisation code for non-value structs.
1957         (init_nonvalue_array): New function to generate initialisation
1958         code for non-value array's.
1959         (do_decl): Call one of the above mentioned functions in case
1960         we have a mode with the non-value property.
1961         (start_chill_function): Print error message if a non-value mode
1962         gets returned without LOC and check for arguments of non-value
1963         modes only gets passed by LOC.
1964
1965         * grant.c (print_proc_tail): Fix for procedure returning LOC.
1966
1967         * inout.c (build_io_types): Set CH_TYPE__NONVALUE_P on
1968         association_type_node.
1969         (invalidate_access_recordmode): New function to set the
1970         record mode of an ACCESS to error_mark_node in case of
1971         record mode has the non-value property.
1972         (build_text_mode): Set CH_TYPE_NONNVALUE_P.
1973         (build_access_mode, build_chill_gettextaccess): Deto.
1974         (check_exprlist): Correct processing of repetition factor.
1975
1976         * lex.c (readstring): Correct processing of control
1977         sequences of the form '^([H | D | O | B]'xx)'.
1978
1979         * loop.c: Cleanup iterator handling (done by Per).
1980         (nonvalue_begin_loop_scope, nonvalue_end_loop_scope): New
1981         functions for starting and ending a loop scope in case
1982         of initialising an array with non-value property.
1983
1984         * parse.c (check_end_label): Remove '\n' from error message.
1985         (parse_loc_declaration): Print error in case of loc-identity
1986         declaration without initialisation or with keyword INIT.
1987         (parse_do_action): Clean up iterator handling (done by Per).
1988
1989         * satisfy.c (safe_satisfy_decl (case TYPE_DECL)): Print an error
1990         message in case of TYPE_DECL is a signal and the mode has the
1991         non-value property.
1992         (satisfy (case ARRAY_TYPE)): Set CH_TYPE_NONVALUE_P of the
1993         the array type if the array element mode has the non-value
1994         property.
1995         (satisfy case RECORD_TYPE)): Set CH_NONVALUE_P on the record
1996         type if one of the fields have the non-value property. If the
1997         record is a buffer mode and the element mode of the buffer has
1998         the non-value-p., invalidate it (see
1999         tasking.c (invalidate_buffer_element_mode). Same for access modes.
2000
2001         * tasking.c (build_signal_descriptor): If the signal type have
2002         the non-value property, do nothing.
2003         (build_receive_signal_case_label): Don't do an assignment if the
2004         signal type have the non-value property.
2005         (build_receive_buffer_case_label): Add check for buffer element
2006         mode is ERROR_MARK.
2007         (expand_send_buffer): Deto.
2008         (build_buffer_type): Set CH_TYPE_NONVALUE_P on buffer mode.
2009         (invalidate_buffer_element_mode): New function to set type of
2010         buffer element mode to error_mark_node.
2011         (build_event_type): Set CH_TYPE_NONVALUE_P on event mode.
2012
2013 Wed Nov 15 13:26:20 1995  Jeffrey A Law  (law@cygnus.com)
2014
2015         * inout.c (intsize_of_charsexpr): Move declaration to top
2016         of file to avoid error from solaris2.5 cc.
2017
2018 Thu Nov  9 02:50:40 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2019
2020         * satisfy.c (satisfy): For a RECORD_TYPE, which is an ACCESS or TEXT
2021         mode, temporarily reset maximum_field_alignment to 0 before
2022         layouting it to be compatible with the runtime library.
2023
2024         * inout.c (build_chill_gettextaccess): Deto.
2025
2026 Mon Nov  6 04:12:06 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2027
2028         * decl.c (do_decl): If type is READonly, add check if an
2029         ASSOCIATION, ACCESS, TEXT, BUFFER, or EVENT will be declared
2030         and print an error if this is true. Variables of this modes
2031         may not be declared READonly.
2032         Add check for mode is one of the above and an init value was
2033         given. This is also not allowed.
2034         Add initialisation of variables of the above modes during
2035         runtime. This influence the mechanism for detecting to
2036         build a constructor.
2037         (push_modedef): NEW- or SYNMODES of ASSOCIATION, ACCESS, TEXT,
2038         BUFFER, and EVENT mode must not be READonly.
2039         (start_chill_function): Arguments of modes ASSOCIATION, ACCESS,
2040         TEXT, BUFFER, or EVENT may be passed only by LOC. Add this check.
2041         (declare_predefined_file): Move to inout.c.
2042         (init_decl_processing): Add definitions for new built-in's.
2043         (finish_outer_function): Build a constructor only if
2044         build_constructor is set.
2045
2046         * except.c: On Linux native, setjmp is __setjmp.
2047
2048         * expr.c (build_chill_component_ref): New function. It gets called
2049         from parse.c instead of build_component_ref. Functions checks if the
2050         user tries to access a field of an ACCESS, ASSOCIATION, BUFFER,
2051         EVENT, INSTANCE, or TEXT mode, which actually is not allowed.
2052         (build_chill_floatcall): New function to resolve CHILL's floating
2053         point builtin calls (SIN, COS, TAN, etc.).
2054         (build_allocate_getstack, build_chill_allocate, build_chill_getstack,
2055         build_chill_terminate): New functions to resolve CHILL's ALLOCATE,
2056         GETSTACK, and TERMINATE built-in's.
2057         (build_generalized_call): Process new built-in's.
2058
2059         * grant.c (decode_mode): Add processing of ACCESS and TEXT modes.
2060         (decode_mode_selective): deto.
2061
2062         * inout.c: Completely rewritten for implementing Chapter 7 of
2063         Z.200 (input and output).
2064
2065         * lex.c (yylex): An '_' after a '.' doesn't mean, that we are
2066         parsing numbers.
2067
2068         * lex.h (enum rid): Add RID_ASSOCIATION.
2069
2070         * parse.c: New flag build_constructor to indicate if a constructor
2071         should be generated at the end of compilation or not. See
2072         decl.c(do_decl).
2073         (parse_begin_end_block): Don't emit a line note.
2074         (parse_primval): Call build_chill_component_ref instead of
2075         build_component_ref.
2076         (parse_opt_mode): Process ACCESS modes, ASSOCIATION modes, TEXT
2077         modes, USAGE modes, WHERE modes.
2078
2079         * satisfy.c (safe_satisfy_decl): Check if a SYN is of mode ASSOCIATION,
2080         ACCESS, TEXT, BUFFER, or EVENT and print an error in this case.
2081         (satisfy (case RECORD_TYPE)): If exp is TEXT mode, check the text length.
2082
2083         * typeck.c (extract_constant_from_buffer): Fix thinko in case
2084         of ! BYTES_BIG_ENDIAN.
2085         (build_chill_cast): Implement representation conversion between
2086         INT's and REAL's.
2087         (chill_similar): Add check of ACCESSes.
2088         (layout_chill_range_type): Check for real ranges and print
2089         sorry message.
2090
2091         * Make-lang.in: Change compiler version.
2092         chill also depends on Makefile.
2093
2094         * chill.in: Process command line option -Xlinker like -Tdata.
2095
2096         * ch-tree.h: New macros CH_IS_ASSOCIATION_MODE, CH_IS_ACCESS_MODE,
2097         CH_IS_USAGE_MODE, CH_IS_WHERE_MODE, and CH_IS_TEXT_MODE.
2098         Add some prototypes.
2099         (enum chill_built_in_function): Add BUILT_IN_ARCCOS, BUILT_IN_ARCSIN,
2100         BUILT_IN_CH_DELETE, BUILT_IN_LOG, BUILT_IN_SQRT.
2101         Remove BUILT_IN_READLEN, BUILT_IN_ROUND, BUILT_IN_SKIPRECORD.
2102
2103         * gperf, hash.h: Remove definition of WHERE.
2104
2105 Thu Oct  5 06:22:19 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2106
2107         * grant.c (decode_constant_selective): Add some newlines
2108         to generated SPEC MODULE.
2109
2110 Wed Oct  4 18:16:44 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2111
2112         * decl.c (pop_chill_function_context):  Remove some bogosity.
2113
2114 Wed Oct  4 05:14:00 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2115
2116         * grant.c (print_integer_selective): In case of a RANGE of
2117         a SET mode, try to find and grant the parent mode.
2118         (grant_seized_identifier): Don't write it out, if the identifier
2119         doesn't have a seize file (it may come from a SPEC MODULE
2120         defined in the compilation unit).
2121
2122 Fri Sep 22 14:04:40 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2123
2124         * actions.c (check_non_null):  Wrap expr in SAVE_EXPR if needed.
2125
2126 Wed Sep 20 13:51:54 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2127
2128         * expr.c (force_addr_of):  Optimize an INDIRECT_REF using
2129         convert_to_pointer rather than convert (which in case of
2130         a REFERENCE_TYPE would losingly call convert_from_reference).
2131
2132 Wed Sep 20 04:03:58 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2133
2134         * inout.c (build_chill_writetext): In case of character string:
2135         Add processing of a concatenation including varying character
2136         strings.
2137         (intsize_of_charsexpr, get_max_size): New functions to determine
2138         the maximum size of varying character strings.
2139
2140         * grant.c (decode_constant, decode_constant_selective): Add
2141         processing of COMPONENT_REF.
2142
2143         * satisfy.c (satisfy (case COMPONENT_REF)): Correct handling
2144         for SYNONYM's with STRUCT mode.
2145
2146 Mon Sep 18 17:25:11 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2147
2148         * expr.c (force_addr_of):  Optimize of value is INDIRECT_REF.
2149         * typeck.c (build_chill_slice):  Call mark_addressable.
2150
2151 Mon Sep 18 14:38:15 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2152
2153         * expr.c (chill_expand_expr):  Make a copy before calling __psslice
2154         if the array is neither referable nor BLKmode.
2155         (build_set_expr):  Renamed to ...
2156         (build_compare_set_expr):  Allow one opperand to be boolean.
2157         (build_compare_expr):  Check both operands for SET_EXPR,
2158         before checking for discrete types (for -fold-strings).
2159
2160 Fri Sep 15 11:35:43 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2161
2162         * satisfy.c (safe_satisfy_decl):  For a CONST_DECL, set TREE_TYPE
2163         to error_mark_node or error.
2164
2165 Fri Sep 15 00:26:02 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2166
2167         * grant.c (decode_constant_selective): Add processing of
2168         TREE_OPERAND (val, 0).
2169
2170 Wed Sep 13 14:24:12 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2171
2172         * ch-tree.h (CH_IS_INSTANCE_MODE):  Redefine to use CH_SIMILAR.
2173         * convert.c (convert):  Use CH_IS_INSTANCE_MODE.
2174         * inout.c (build_chill_writetext):  Likewise.
2175         * tasking.c (build_receive_case_start, build_delay_case_start):  Ditto.
2176         * parse.c (parse_start_action):  Remove redundant tests.
2177         * tasking.c (build_start_process):  Also test that optset is instance.
2178         (build_copy_number, build_proc_type, expand_send_signal):  Use
2179         CH_IS_INSTANCE_MODE, not CH_COMPATIBLE.
2180         * actions.c, convert.c (instance_type_node):  Remove redundant
2181         extern declaration.
2182
2183 Wed Sep 13 14:19:37 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2184
2185         * regression.awk2:  Use \ line-continuation-markers
2186         to remove gratuitous gawk dependency.
2187
2188 Mon Sep 11 17:26:53 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2189
2190         * typeck.c (build_chill_modify_expr):  Use force_addr_of.
2191         (mark_addressable):  Handle INDIRECT_REF of ADDR_EXPR.
2192
2193         * typeck.c (check_case_value), ch-tree.h:  Moved to ...
2194         * actions.c (check_case_value):  ... here.  Also check for
2195         compatibility with selector (which is passed as extra argument).
2196         (chill_handle_case_label_range):  Take selector argument,
2197         and use it to call check_case_value.
2198         (chill_handle_case_label):  Take extra selector argument.
2199         * ch-tree.h (chill_handle_case_labe):  Add prototype.
2200         * except.c expr.c, parse.c:  Remove chill_handle_case_label prototypes.
2201         * actions.c, except.c, expr.c, parse.c: Pass extra selector
2202         argument to function calls as needed.
2203
2204 Mon Aug 28 02:47:54 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2205
2206         * grant.c (decode_constant_selective): Fix a bug in writing items
2207         to grant file.
2208
2209 Thu Aug 24 04:52:28 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2210
2211         * parse.c (parse_case_expression): Print warning only in
2212         pass 1.
2213
2214         * actions.c (print_missing_cases): Correct printing of
2215         character ranges.
2216
2217 Wed Aug 23 15:26:12 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2218
2219         * parse.c (parse_case_label_list):  Take extra parameter to
2220         indicate if we're parsing a tuple or a case-label-spec.
2221         If former, don't allow '(' EXPR ')' ',' but backup instead.
2222         (parse_case_label_specification, parse_tuple_element):
2223         Pass appropriate new argument to parse_case_label_list.
2224
2225 Wed Aug 23 06:08:28 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2226
2227         * inout.c (build_chill_readtext): Add processing of BOOL's and
2228         CHARS(n).
2229
2230         * grant.c (decode_constant): Process nonprintable characters
2231         in a STRING_CST.
2232
2233 Fri Aug 11 15:26:13 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2234
2235         * except.c (initialize_exceptions):  Name setjmp "setjmp" and not
2236         "__builtin_setjmp" (which is not recognized by expand_call).
2237
2238 Wed Aug  9 23:35:36 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2239
2240         * loop.c (end_loop_scope):  Need to call kept_level_p,
2241         in argument to poplevel.
2242
2243 Wed Aug  9 05:48:30 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2244
2245         * Make-lang.in (CHILL.install-common): Don't install chill-cross (this
2246         file might be empty). Install chill.install instead.
2247
2248 Tue Aug  8 21:46:30 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2249
2250         * loop.c (end_loop_scope):  Do poplevel *after* expand_end_bindings.
2251
2252 Tue Aug  8 00:51:09 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2253
2254         * tasking.c (build_process_header): Also set DECL_ASSEMBLER_NAME
2255         of PARAM_DECL, since otherwise dbxout_symbol_name may barf.
2256
2257         * decl.c (start_chill_function): Likewise ...
2258
2259 Mon Aug  7 18:35:35 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2260
2261         * tasking.c (build_process_wrapper):  Also set DECL_ASSEMBLER_NAME
2262         of PARM_DECL, since otherwise dbxout_symbol_name may barf.
2263
2264 Mon Jul 31 14:32:33 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2265
2266         * loop.c:  Re-written implementation of powerset iteration.
2267         (declare_temps):  iter_var is now integer index into bitstring,
2268         and powerset_temp just uses save_expr (normally needs no temp).
2269         (top_loop_end_check):  Pass index to start searching (from iter_var)
2270         to library function, instead of dependning on latter to clear old bits.
2271         (increment_temps):  UNless DOWN, increment iter_var.
2272         * decl.c (init_decl_processing):  Declare new types for
2273         __ffsetclrpowerset and __flsetclrpowerset (now misnamed...).
2274
2275 Mon Jul 31 12:47:28 1995  Per Bothner  <bothner@cygnus.com>
2276
2277         * convert.c (digest_array_tuple):  Set TREE_STATIC if possible.
2278
2279 Fri Jul 28 05:11:56 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2280
2281         * lex.c (readstring): Process integer literals starting with
2282         H', D', or B' within a control sequence.
2283
2284 Thu Jul 27 23:08:51 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2285
2286         * parse.c (parse_do_action):  Don't call push_action, but defer
2287         push_handler until begin_loop_scope.
2288         Call parse_opt_handler here, to move handler scope inside loop block.
2289         (parse_action):  After do_action, nothing to do now.
2290         * loop.c (begin_loop_scope):  Also call push_handler here.
2291         (declare_temps):  Copy derived flag to user_var.
2292         (declare_temps):  For POWERSET, always copy to temporary (even if
2293         constant), since the runtime clears bits from it.
2294
2295         * expr.c (build_chill_sizeof):  Use convert_to_class.
2296         * satisfy.c (safe_satisfy_decl):  Cleanup handling of CONST_DECL -
2297         set proper value of CH_DECL_FLAG on both the decl and its value.
2298
2299         * convert.c (digest_array_tuple); Slightly better errors.
2300
2301 Wed Jul 26 22:13:39 1995  Per Bothner  <bothner@cygnus.com>
2302
2303         * expr.c (expand_packed_set):  Also allocate the CONSTRUCTOR itself.
2304         (fold_set_expr):  Simplify accordingly.
2305         (build_concat_expr):  Constant fold bitstring CONCAT_EXPRs.
2306
2307 Thu Jul 13 12:21:22 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2308
2309         * typeck.c (build_chill_slice):  Use build1 instead of build.
2310         * typeck.c (xtract_constant_from_buffer):  Pass correct precision
2311         to lshift_double.
2312
2313         * typeck.c (expand_constant_to_buffer):  Handle RANGE_EXPR index.
2314         * convert.c (digest_array_tuple):  Generate RANGE_EXPR as index
2315         for tuples with ranges.
2316
2317 Thu Jun 29 23:41:15 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2318
2319         * typeck.c (build_chill_slice):  Re-implement to use casts
2320         instead of build_chill_array_ref_1 (which doesn't always work).
2321         * convert.c (convert):  Remove old bugs code.
2322
2323 Tue Jun 27 05:00:04 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2324
2325         * parse.c (parse_if_action): Do PUSH_ACTION before parsing the
2326         expression so that a possible handler at the if action will
2327         be found.
2328         (parse_proc_body): New argument to indicate if the function
2329         raises exceptions or not. In case the function will raise
2330         exception: start a handler, parse the function and generate
2331         code for reraising the exceptions (call chill_reraise_exceptions).
2332
2333         * except.c (chill_reraise_exceptions): New function to generate
2334         code for reraising exceptions are specified at the function
2335         definition.
2336
2337         * ch-tree.h: Add prototype for chill_reraise_exceptions.
2338
2339         * decl.c (build_chill_function_type): When the function (type)
2340         raise an exception, generate two new arguments (additional to the
2341         formal parameters), the filename and linenumber of the caller.
2342         (start_chill_function): likewise...
2343
2344         * expr.c (build_chill_function_call): If the called function raises
2345         exceptions, give current filename and linnumber as aditional
2346         arguments.
2347
2348         * actions.c (build_cause_exception): Handle case when function
2349         propagates the exception.
2350
2351         * grant.c (print_proc_tail, print_proc_tail_selective): If the
2352         function(type) raises exceptions, don't process the last to
2353         parmeters of the formal argument list, they are compiler
2354         generated.
2355
2356         * typeck.c (chill_similar): In case of FUNCTION_TYPE: check if
2357         the exception lists are equal.
2358
2359 Thu Jun 22 19:27:47 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2360
2361         * loop.c (flag_local_loop_counter):  Change default to 1.
2362         (end_loop_scope):  Set 'keep' parameter in poplevel call.
2363         (declare)_temps):  Don't set IDENTIFIER_LOCAL_VALUE, since that
2364         is handled (correctly!) by pushdecl.
2365         (begin_loop_scope):  Call pushlevel here,
2366         * parse.c (parse_do_action):  Move pushlevel so only called for WITH.
2367         * decl.c (struct scope):  Remove n_incomplete field and its uses.
2368         (pushdecl):  Re-write to use proclaim_decl.  Remove old C-isms.
2369         (init_decl_processing):  Re-name integer_type_node as "_cint" to
2370         remove complaint from pushdecl about chill_integer_type_node as "int".
2371
2372 Tue Jun 20 18:15:58 1995  Doug Evans  <dje@canuck.cygnus.com>
2373
2374         * Make-lang.in (chill-runtime): Restore patch to disable building of
2375         runtime libraries for cross compilers.  This patch should remain
2376         until a build of a freshly checked out devo "just works".
2377
2378 Mon Jun 19 06:01:42 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2379
2380         * Make-lang.in: Update GNUCHILL_VERSION to 1.4.4.
2381
2382         * decl.c (init_decl_processing): Remove builtin function
2383         __cause_exception. New builtin functions __cause_ex1 and
2384         __unhandled_ex.
2385
2386         * except.c (is_handled): Return 0 when no handler found,
2387         1, if the handler is in local scope and 2, if function
2388         may propagate the exception.
2389
2390         * actions.c (build_cause_exception): New argument to
2391         indicate if a warning should be printed when
2392         causing an unhandled exception. Call is_handled here.
2393
2394         * ch-tree.h: Change prototype for build_cause_exception.
2395         New marco CH_ALREADY_GRANTED. Used in grant.c to determine if an
2396         identifier already has been written to grant file.
2397
2398         * grant.c (write_spec_module): If not GRANT ALL specified,
2399         write only this identifiers to grant file which are
2400         necessary to form a prober grant file. This will shorten
2401         grant files and speed up compilation.
2402         (decode_constant_selective, decode_mode_selective,
2403         get_type_selective, decode_decl_selective,
2404         grant_array_type_selective, get_tag_value_selective,
2405         print_enumeral_selective, print_integer_selective,
2406         print_struct_selective, print_proc_tail_selective,
2407         grant_one_decl_selective): New functions.
2408
2409         * lex.c (yywrap): Remove writing of not yet written USE_SEIZE_FILE
2410         directives to grant file.
2411
2412         * parse.c (parse_on_exception_list): Fis constructing of
2413         exceptions list.
2414
2415 Wed Jun 14 15:21:54 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2416
2417         * typeck.c (valid_array_index_p):  Check for syntax error, where
2418         index is a mode, rather than a value.
2419
2420         * expr.c (build_chill_binary_op_1):  Remove unused function.
2421
2422 Sat Jun 10 11:36:52 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2423
2424         * except.c (is_handled):  New function.
2425         Various fixes here and there to make it work.
2426
2427         * parse.c (parse_param_name_list):  Set DECL_ASSEMBLER_NAME.
2428         (Otherwise dbxout may crash.)
2429
2430         * satisfy.c (satisfy case FUNCTION_TYPE):  Check for non-type result.
2431         * decl.c (start_chill_function):  If result type was error_mark,
2432         kludge type chill_os result_decl to avoid extra errors.
2433         * actions.c (chill_expand_result, chill_expand_return):  If type of
2434         chill_result_decl is error_mark, do nothing.
2435
2436         * typeck.c (chill_similar): Fix thinko in recent change.
2437
2438         * config-lang.in (diff_exclude):  Remove ch/lex.c - now it's a
2439         true source file, and is never longer generated with [f]lex.
2440
2441         * regression.sh:  Pass -s to make clean (to make it silent).
2442         Explicitly call gawk, instead of depending of '#!' to work.
2443         Add --objdir flags.  Never send mail to bill.
2444
2445 Thu Jun  8 15:08:35 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2446
2447         * typeck.c (chill_similar):  Add extra parameter.  Use to to prevent
2448         infinite recursion.
2449         (chill_equivalent, chill_l_equivalent):  Also add new parameter.
2450         * ch-tree.h (CH_SIMILAR, CH_EQUIVALENT):  Modify to match.
2451
2452 Tue Jun  6 17:14:49 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2453
2454         * loop.c (declare_temps):  If -flocal-loop-counter, make sure to
2455         pushdecl the new variable (created with decl_temp1).
2456         And fix the type of the local variable for powerset iteration.
2457
2458 Tue Jun  6 15:07:19 1995  Per Bothner  <bothner@cygnus.com>
2459
2460         * typeck.c (mark_addressable):  Handle ADDR_EXPR inside
2461         NOP_EXPR inside INDIRECT_EXPR.  For TRUTH_ANDIF_EXPR,
2462         TRUTH_ORIF_EXPR, and COMPOUND_EXPR mark operand 1, not operand 0
2463         (which is used for range-checks and suchlike).
2464
2465 Thu Jun  1 02:45:54 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2466
2467         * expr.c (build_set_expr): Do some optimizations for LE_EXPR and
2468         GE_EXPR (don't do invert_truthvalue, just switch operands).
2469
2470 Wed May 31 14:00:38 1995  Doug Evans  <dje@canuck.cygnus.com>
2471
2472         * lang-options.h: New file.
2473         * lang-specs.h: New file.
2474
2475 Wed May 24 01:45:18 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2476
2477         * actions.c (assign_stack_temp):  Remove unneeded declaration.
2478
2479 Tue May 23 00:17:38 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2480
2481         * parse.c (parse_on_exception_list):  Return list of exception
2482         names in pass 1, not in pass 2.  (Return non-NULL dummy if pass 2.)
2483         (parse_on_alternatives):  Call chill_handle_on_labels even if ignoring.
2484         (parse_opt_handler):  Likewise for chill_start_default_handler.
2485         * except.c (push_handler):  Clear on_alt_list only if pass 1.
2486         (chill_handle_on_labels):  Build on_alt_list in pass 1,
2487         retrieve it in pass 2.
2488
2489         Fix so that decl_temp1 does not expand_decl_init, which calls
2490         free_temp_slots, which loses in the middle on an expression.
2491         * decl.c (finish_decl):  Don't call expand_decl_init.
2492         (do-decl):  Do initialization assignment even if stack variable.
2493         * parse.c (parse_loc_declaration):  Call free_temp_slots.
2494
2495         * decl.c (finish_decl), ch-tree.h:  Remove last two always-NULL
2496         parameters.  Cleanup never-used code.
2497         * decl.c, except.c:  Update calls to finish_decl.
2498
2499         * decl.c (case_else_node):  Define new variable.
2500         (init_decl_processing):  Initialize it.
2501         (make_chill_variants): If variant label is case_else_node (i.e. it
2502         is (ELSE):), treat that as an ELSE variant.
2503         * ch-tree.h (case_else_node):  Declare case_else_node.
2504         * parse.c (parse_case_label):  Use case_else_node.
2505
2506 Mon May 22 10:18:11 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2507
2508         * grant.c (print_proc_tail):  Also call print_proc_exceptions.
2509         (decode_decl):  Don't explicitly call print_proc_exceptions for
2510         FUNCTION_DECL.
2511         (Net effect is that now exceptions are printed for FUNCTION_TYPE too.)
2512
2513         * actions.c (chill_convert_for_assignment):  Use save_if_needed,
2514         instead of save_expr, in case value is a reference.
2515
2516         * typeck.c (build_chill_slice):  Fix old thinko (missing call to
2517         build_pointer_type).
2518
2519         * actions.c (size_int):  Remove unused and conflicting prototype.
2520
2521 Wed May 17 16:23:20 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2522
2523         * actions.c (chill_convert_for_assignment):  Call save_expr if
2524         range_checking (twice).
2525
2526 Tue May 16 11:33:41 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2527
2528         * typeck.c (layout_chill_range_type):  Re-organize error checking.
2529         Add extra parameter to indicate if non-constant bounds are allowed.
2530         If bounds are bad, set them to the min_value of the parent.
2531         * ch-tree.h (layout_chill_range_type):  Update declaration.
2532         * satisfy.c (satisfy):    Update call of layout_chill_range_type.
2533         * typeck.c (build_chill_range_type):  Likewise.
2534         * tree.c (build_string_type):  Likewise.
2535
2536 Tue May 16 00:37:51 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2537
2538         * expr.c (build_chill_sizeof): Fix bug in case of SIGNAL.
2539
2540 Mon May 15 12:54:32 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2541
2542         * satisfy.c (satisfy):  Supress error message for REF <error_mark>.
2543         * decl.c (push_modedef):  Check for TREE_CODE != ERROR_MARK, instead
2544         of against error_mark_node.  (smash_dummy_type can copy error marks.)
2545         (finish_decl):  Simplify C-derived check for incomplete type,
2546         and suppress if it is an ERROR_MARK.
2547         Don't call rest_of_decl_compilation if type is an ERROR_MARK.
2548
2549 Sun May 14 22:52:40 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2550
2551         * convert.c (convert):  Handle array types with different modes.
2552
2553 Thu May 11 15:52:12 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2554
2555         * loop.c (build_loop_iterator):  Handle the case of a non-local
2556         loop counter having reference type.
2557
2558 Thu May 11 07:04:29 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2559
2560         * tasking.c (build_copy_number, build_gen_code, build_gen_inst,
2561         build_gen_ptype, build_proc_type): Set CH_DERIVED_FLAG on result
2562         to avoid erros when assigning to (comparing with) NEWMODEd INT's.
2563
2564 Mon May  8 15:27:16 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2565
2566         * expr.c (build_chill_card):  Do constant folding, if possible.
2567         (build_max_min):  Do constant folding for MIN/MAX of powersets.
2568
2569 Mon May  8 06:57:21 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2570
2571         * expr.c (build_chill_sizeof): Add corect processing of a
2572         SIGNAL definition without data.
2573
2574 Sat May  6 16:27:10 1995  Doug Evans  <dje@canuck.cygnus.com>
2575
2576         * Make-lang.in (maintainer-clean): Renamed from realclean.
2577
2578 Tue May  2 06:16:23 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2579
2580         * parse.c (parse_asm_action): Do PUSH_ACTION unconditionally,
2581         otherwise "handler stack" will get out of sync.
2582
2583 Mon Apr 24 09:51:07 1995  Per Bothner  <bothner@rtl.cygnus.com>
2584
2585         Fixes to support module-level non-static temporary variables.
2586         * parse.c (parse_loc_declaration):  If all_static_flag and not
2587         resursive, tell do_decls to make new decl static.
2588         * decl.c (do_decl):  Don't use maybe_static function to force static.
2589         (do_decl):  Don't let initialization count as "using" the variable.
2590         (maybe_static):  Removed.
2591         (finish_decl):  Call expand_decl and expand_decl_init if needed
2592         (as it will be for non-static temporaries).
2593
2594 Fri Apr 21 21:02:30 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2595
2596         * convert.c, expr,c typeck.c (expand_decl):  Remove usused declaration.
2597
2598 Fri Apr 21 02:27:12 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2599
2600         * expr.c (build_set_expr): Fix thinko: GE(x,y) is not eqivalent to
2601         LT(y,x) its rather equivalent to NOT (LT(x,y)). Same is true for
2602         GT(x,y), its not equiv. to LE(y,x), its equiv. to NOT (LE(x,y)).
2603
2604 Thu Apr 20 15:29:05 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2605
2606         * parse.c (yytext, finput):  Remove unused declarations.
2607
2608         * parse.c (proc_action_level):  New variable.
2609         (parse_proc_body):  New function.  Common code from
2610         parse_procedure_definition and parse_process_definition moved here.
2611         Save, set, and restore proc_action_level from action_nesting_level.
2612         (parse_action case RETURN):  Pass proc_action_level to
2613         expand_goto_except_cleanup.
2614
2615 Thu Apr 20 06:02:20 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2616
2617         * grant.c (really_grant_this): Add processing of LABEL_DECL's
2618         (don't grant them).
2619
2620 Tue Apr 18 18:16:28 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2621
2622         * lex.c ( convert_bitstring):  Use BYTES_BIG_ENDIAN rather
2623         than BITS_BIG_ENDIAN to layout bits within bitstring.
2624         * typeck.c (expand_constant_to_buffer, extract_constant_from_buffer):
2625         Likewise.
2626
2627 Sun Apr 16 19:55:51 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2628
2629         * decl.c (finish_chill_function):  If currently global_function_decl,
2630         don't set outer_function to global_function_decl.
2631
2632 Wed Apr 12 22:45:06 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2633
2634         * decl.c (start_chill_function):  Normal functions are nested.
2635         (finish_chill_function):  No longer takes a 'nested' parameter.
2636         Normal functions are nested.
2637         Never call permanent_allocation, since it does little good (all normal
2638         functions are nested), and trashes some things we need.
2639         (finish_outer_function):  Update call to finish_chill_function.
2640         * grant.c (chill_finish_compile):  Likewise.
2641         * tasking.c (build_process_wrapper):  Likewise.
2642         * parse.c (end_function):  Likewise.
2643         * ch-tree.h (finish_chill_function):  Update declaration.
2644
2645         * parse.c (parse_asm_clobbers):  Re-enable.
2646         (expand_asm_operands):  function.
2647         (parse_asm_action):  Re-enable.  Don't do anything in pass 1.
2648
2649         * typeck.c (build_chill_slice):  Do constant folding.
2650         Also, work around problem where expand_expr constant folds ARRAY_REF.
2651         (sort_constructor):  Remove unused function.
2652
2653         * expr.c (chill_expand_expr case CONCAT_EXPR):  Make sure we
2654         emit_block_move if needed with correct size.
2655
2656         * inout.c (build_chill_io_list_type):  Simplify.
2657
2658         * lex.c (check_newline):  Uncomment some dwarf stuff,
2659         which needs get_directive_line, which we no longer have.
2660
2661 Wed Apr  5 16:05:15 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2662
2663         * Makefile.in (C_OBJS, xcc1chill):  Removed.  We no longer
2664         link cc1chill with ../c-typeck.o ../c-aux-info.o ../c-common.o.
2665
2666         * expr.c (build_chill_component_ref):  Renamed to build_component_ref.
2667         (chill_truthvalue_conversion):  Renamed to truthvalue_conversion.
2668         * decl.c, expr.c, inout.c, loop.c, parse.c, tasking.c, timing.c,
2669         typeck.c:  Update accordingly.
2670         * typeck.c (valid_array_index_p):  We only need to save_expr (index)
2671         if we're range-checking.
2672         * typeck.c (unsigned_type, signed_type, signed_or_unsigned_type,
2673         mark_addressable, initializer_constant_valid_p, check_case_value,
2674         type_for_size, type_for_mode):  New functions, copied from
2675         ../c-common.c and ../c-typeck.c.
2676
2677         * lang.c (incomplete_type_error):  New.  (Was in c-common.o.)
2678         * decl.c (constant_expression_warning):  New.  (Was in c-common.o.)
2679
2680         * lang.c (string_index_type_dummy):  Remove definition from here.
2681         * tree.c (string_index_type_dummy):  Define here instead.
2682         * lang.c (lang_init):  Move init of string_index_type_dummy
2683         (which is too late) from here ...
2684         * decl.c (init_decl_processing): ... to here.
2685
2686         * decl.c (signed_boolean_type_node):  New variable.
2687         (init_decl_processing):  Initialize it.
2688
2689         * parse.c:  Comment out ASM action support, for now.
2690
2691         * loop.c (maybe_skip_loop):  Make return void, not int.
2692         Use build_compare_discrete_expr.
2693         (increment_temps):  Use chill_expand_assignment.
2694
2695 Thu Mar 30 23:28:28 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2696
2697         * decl.c (do_decl):  If default-initializing variable-length
2698         string to "" (or []), make it lifetime_bound.
2699
2700 Thu Mar 30 02:51:59 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2701
2702         * parse.h, hash.h, gperf: New compiler directives
2703         EMPTY_ON and EMPTY_OFF.
2704
2705         * lex.c: New variables empty_checking and runtime_checking_flag.
2706         (ch_lex_init): Initialize empty_checking and range_checking
2707         when switching from pass 1 to 2.
2708         (read_directive): Add processing of EMPTY_OFF/ON.
2709
2710         * expr.c (build_chill_indirect_ref): New argument do_empty_check
2711         to indicate if null pointer checking should be done or not.
2712         It's not always necessary to do a null pointer check.
2713
2714         * decl.c (lookup_name): Add argument to call to
2715         build_chill_indirect_ref.
2716         (shadow_record_fields): ...
2717         * parse.c (parse_primval): ...
2718         * tasking.c (build_process_wrapper): ...
2719         (build_receive_buffer_case_label): ...
2720
2721         * ch-tree.h: Change prototype of build_chill_indirect_ref.
2722         Add declaration of runtime_checking_flag and empty_checking.
2723
2724         * actions.c (check_non_null): Do null pointer checking only
2725         when enabled (empty_checking != 0).
2726
2727 Wed Mar 29 15:18:23 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2728
2729         * actions.c (chill_expand_assignment):  Add 'else' so we don't do
2730         regular assignment in addition to spacial assignment (e.g. for slices).
2731
2732         * ch-tree.h (convert_to_discrete):  Add declaration.
2733         * typeck.c (convert_to_discrete):  New function.
2734         (valid_array_index_p):  Use convert_to_discrete.  Also simplify.
2735         (build_chill_slice):  Say sorry if variable-length bitstring.
2736         (build_chill_slice_with_length):  Re-do bounds check.
2737         * expr.c (check_case_selector):  Re-write to use convert_to_discrete.
2738         (build_chill_num, build_chill_pred_or_succ):  Use convert_to_discrete.
2739
2740         * decl.c (do_decl):  Don't do redundant chill_convert_for_assignment.
2741
2742 Wed Mar 29 00:00:29 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2743
2744         * expr.c (build_chill_num): need_unsigned have to be set for
2745         characyer strings of length 1 too. Happens when compiling
2746         with -fold-strings and do NUM(a(i)).
2747
2748         * parse.c (parse_loc_declaration): Print error message only
2749         in pass 1.
2750         (parse_mode): Likewise ...
2751
2752         * tasking.c (build_tasking_message_type): Temporarily reset
2753         maximum_field_alignment to get proper aligned temp. variables
2754         gets passed to runtime system.
2755
2756 Tue Mar 28 00:08:06 1995  Per Bothner  <bothner@cygnus.com>
2757
2758         * typeck.c (my_build_array-ref):  Merged into build_chill_array_ref_1.
2759         But don't convert index to integer_type_node.  And we don't need to
2760         check the we're given an array.
2761         * typeck.c (valid_array_index_p):  If flag_old_strings, convert
2762         chars(1) to char and bools(1) to bool before index checking.
2763
2764 Sun Mar 26 22:42:39 1995  Per Bothner  <bothner@cygnus.com>
2765
2766         * ch-tree.h (struct module):  Added next module field.
2767         * decl.c (first_mdoule, next_module):  New global variables.
2768         (switch_to_pass_2):  Re-initialize next_module.
2769         (push_module):  In pass 2, reuse the same module objects from pass 1.
2770
2771         * decl.c (declare_predefined_file):  Set DECL_IN_SYSTEM_HEADER.
2772
2773         * typeck.c (valid_array_index_p):  Do range check on original index,
2774         before we convert to domain type.
2775
2776 Fri Mar 24 11:43:39 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2777
2778         * parse.c (parse_fixed_field):  New function.
2779         (parse_variant_field_list):  New function replaces parse_simple_fields.
2780         (parse_variant_alternative, parse_field):  Update to use new functions.
2781         (parse_field):  Error message if neither CASE nor NAME.
2782
2783         * actions.c (check_non_null):  New function - checks for NULL pointers.
2784         * ch-tree.h (check_non_null):  New declaration.
2785         * tasking.c (expand_send_signal):  Call check_non_null.
2786         * expr.c (build_chill_indirect_ref, build_chill_function_call):  Same.
2787         * lex.h (enum rid):  Add RID_EMPTY.
2788         * lex.c (init_lex):  Initialize ridpointers[RID_EMPTY].
2789
2790         * lex.c (read_directive):  Remove 2 calls of to_global_binding_level
2791
2792 Wed Mar 22 16:36:46 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2793
2794         * tasking.c (tasking_list):  Change to chain of TREE_VEcs, rather than
2795         chain of (nested) TREE_LIST nodes.
2796         (TASK_INFO_PDECL, TASK_INFO_ENTRY, TASK_INFO_CODE_DECL,
2797         TASK_INFO_STUFF_NUM, TASK_INFO_STUFF_TYPE):  New macros.
2798         (tasking_setup, tasking_registry, add_taskstuff_to_list):  Use them.
2799
2800         * ch-tree.h (C_TYPE_FIELDS_READONLY):  Rename to TYPE_FIELDS_READONLY.
2801         (TYPE_READONLY_PROPERTY):  New macro, to match Z.200 concept.
2802         * typeck.c (build_chill_modify_expr):  Don't check for read-only-ness,
2803         since it is redundant for chill_expand_assignment and breaks
2804         reach-bound initialization in do_decl.
2805         (my_build_array_ref):  Simplify by using TYPE_READONLY_PROPERTY.
2806         (layout_chill_array_type):  Set TYPE_FIELDS_READONLY if appropriate.
2807         * actions.c (chill_expand_assignment):  Check TYPE_READONLY_PROPERTY
2808         instead of TREE_READONLY of the target's type.
2809         * expr.c (build_chill_function_call):  Likewise.
2810         * inout.c (build_chill_readtext):  Likewise.
2811         * decl.c (do_decl):  Likewise, to check if init is required.
2812
2813         * typeck.c (build_chill_bitref):  Removed unused RANGE_EXPR hack.
2814
2815 Wed Mar 22 07:52:52 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2816
2817         * tasking.c (build_start_process): Get a unique identifier for
2818         the start arguments.
2819
2820 Tue Mar 21 07:36:40 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2821
2822         * expr.c (fold_set_expr): At label build_result: Add setting unused
2823         bits to 0. This is the same as the runtime library does.
2824
2825         * parse.c (expect): Function returns now int, 0, if the expected
2826         token was not got, 1 when it was found.
2827         (parse_synonym_definition): In case of syntax error (missing =),
2828         set expr to NULL_TREE and mode to error_mark to avoid subsequent
2829         segfaults.
2830
2831         * chill.texi: Add chapter about differences to Z.200/1988.
2832
2833 Mon Mar 20 18:01:11 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2834
2835         * lang.c (chill_print_error_function):  New function, to report
2836         module name if not inside a function.
2837         (lang_init):  Set print_error_function to chill_print_error_function.
2838
2839         * tasking.c (max_queue_size, buffer_element_mode):  Cleanup
2840         to remove unreachable code.
2841
2842         * grant.c (chill_finish_compile):  Avoid doing a lookup_name
2843         to find init function (which got broken by recent nesting re-org).
2844
2845         * decl.c (poplevel):  Push and pop function context around
2846         call to output_inline_function (as done for C and C++).
2847
2848 Thu Mar 16 17:56:07 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2849
2850         * parse.c (parse_pass_1_2):  If unknown top-level token, skip pass 2.
2851
2852 Wed Mar  8 13:54:33 1995  Doug Evans  <dje@canuck.cygnus.com>
2853
2854         * Make-lang.in (chill-runtime): Temporarily disable building of
2855         runtime libraries for cross compilers.
2856
2857 Mon Mar  6 23:36:19 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2858
2859         * parse.c, decl.c:  Remove use of FUNCTION_NEEDS_STATIC_CHAIN.
2860
2861         * configure:  Merge in tolerance for new flags (e.g. --x-libraries).
2862
2863 Sat Mar  4 15:47:35 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2864
2865         * expr.c (build_chill_arrow_expr):  Error if pass == 1.
2866
2867 Thu Mar  2 19:28:07 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2868
2869         * decl.c (do_decl):  Setting seen_action must be done in pass 1.
2870         (save_decl):  Don't set DECL_CONTEXT to global_function_decl.
2871         (start_chill_function):  Simplify due to above change.
2872
2873         * parse.c (parse_case_label):  Hack to distinguish (ELSE) from (*).
2874         * grant.c (decode_constant):  Emit ELSE in case label.
2875
2876         * parse.c (serious_errors):  New global variable.
2877         * parse.c (to_global_binding_level):  Set serious_errors.
2878         (parse_pass_1_2):  Exit after pass 1 if serious_errors > 0.
2879         * lex.c (readstring):  Recover from unterminstaed control sequence.
2880
2881 Tue Feb 28 17:08:08 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2882
2883         Re-write of module-level actions.  No longer generate a module
2884         function for module-level actions.  Instead, put them inside
2885         a new global dummy function.  Nest everything logically inside it.
2886
2887         * lex.h, grant.c (chill_module_name):  Removed declaration.
2888         * grant.c (write_spec_module):  Instead use current_module->name.
2889         * grant.c (chill_start_module_code, chill_finish_module_code):
2890         Removed.
2891         * grant.c (chill_finish_compile):  Make rtl for global function.
2892
2893         * actions,c (push_action):  Don't call chill_start_module_code.
2894         * expr.c (build_chill_function_call, build_generalized_call):
2895         Likewise.
2896         * parse.c (INIT_ACTION):  Likewise.
2897
2898         * parse.c (seen_action):  New variable.
2899         * parse.c (end_function):  Always call pop_chill_function_context.
2900         (parse_procedure_definition):  Always call push_chill_function_context.
2901         (parse_modulion):  Parse optional handler.
2902         (parse_modulion, parse_spec_module):  Do find_granted_decls.
2903         (parse_action):  Set seen_action if global and a real action.
2904         ([arse_program):  Call start_outer_function and finish_outer_function.
2905
2906         * ch-tree.h:  Appropriate updates.
2907
2908         * tasking.c (generate_tasking_code_variable):  Make it lifetime-bound.
2909         (build_process_header):  Always push_chill_function_context;
2910         we are now always nested.
2911         (build_process_wrapper):  Always pop_chill_function_context.
2912
2913         * tasking.c (build_start_process):  Only expand_start_bindings and
2914         expand_end_bindings if pass 2.
2915
2916         * decl.c (global_function_decl):  New variable.
2917         (do_decl):  Implement reach-bound initialization of static variables.
2918         (start_chill_function):  Set DECL_CONTEXT to NULL if
2919         it would be global_function_decl (so as to not confuse gcc backend).
2920         (start_chill_function, finish_chill_function):  If compiling
2921         global_function_decl in pass 2 and !seen_action, suppress it.
2922         (set_module_name):  New function.
2923         (global_bindings_p):  Re-defined to check against global_function_decl.
2924         (start_outer_function, finish_outer_function):  New functions.
2925
2926 Tue Feb 28 16:00:03 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2927
2928         * typeck.c (build_chill_modify_expr):  Inline logic from
2929         chill_expand_array_assignment,
2930         * actions.c (chill_expand_array_assignment):  Removed.
2931         (chill_expand_assignment):  Remove call to removed function.
2932
2933         * lex.c (reinit_parse_for_function):  Removed empty unused function.
2934         * decl.c (start_chill_function):  Don't call removed function.
2935
2936 Tue Feb 28 00:29:51 1995  Per Bothner  <bothner@cygnus.com>
2937
2938         * configure:  Merge in code for calculating host, build, and
2939         target and canon_{host,build,target} from ../configure.
2940         Fix calculation of mainsrcdir.  Host canon_* variables
2941         to merge in build-make (as in ../configure).
2942
2943 Sun Feb 26 18:59:02 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2944
2945         * typeck.c (expand_constant_to_buffer):  Use new function
2946         get_set_constructor_bytes.
2947
2948 Tue Feb 21 01:41:56 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2949
2950         * inout.c (build_chill_writetext): Add processing of
2951         conditional expressions in argument list.
2952
2953         * parse.c (parse_opt_name_string): Print error message only
2954         in pass 1.
2955
2956         * chill.texi: Add chapter about compiler directives.
2957
2958 Tue Feb 14 16:45:19 1995  Per Bothner  <bothner@kalessin.cygnus.com>
2959
2960         * decl.c (start_chill_function):  Set FUNCTION_NEEDS_STATIC_CHAIN
2961         unless nested.
2962
2963         * decl.c (decl_temp1):  Make lifetime_bound iff static.
2964
2965 Fri Feb  3 04:30:28 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2966
2967         * grant.c (really_grant_this, search_in_list): New static
2968         functions to determine if a decl should be written to
2969         grant file.
2970         (write_spec_module): Add call to really_grant_this.
2971
2972 Fri Jan 27 00:06:12 1995  Wilfried Moser  <moser@rtl.cygnus.com>
2973
2974         * actions.c (check_expression): Apply Per's patch.
2975         (chill_expand_result): New argument to indicate if we come
2976         from a RETURN or RESULT action. Change various error messages.
2977
2978         * ch-tree.h: New macro CH_USE_SEIZEFILE_RESTRICTED.
2979         New argument for chill_expand_result.
2980
2981         * chill.in: In case of -fgrant-only, clear library, libpath and
2982         startfile to avoid warnings from gcc.
2983
2984         * gperf, hash.h: New compiler directive USE_SEIZE_FILE_RESTRICTED.
2985
2986         * parse.h (enum terminal): Add USE_SEIZE_FILE_RESTRICTED.
2987
2988         * grant.c (decode_decl): Don't write USE_SEIZE_FILE directive
2989         and subsequent SEIZEs to grant file, if the seize file is
2990         used restricted.
2991
2992         * lex.c (read_directive): Process new compiler directive
2993         USE_SEIZE_FILE_RESTRICTED.
2994         (handle_use_seizefile_directive): Same as above.
2995         (yywrap): Don't write USE_SEIZE_FILE directive to grant file
2996         if this seize file is used restricted.
2997
2998         * parse.c (parse_action, case RETURN): Change RETURN expr action
2999         to RESULT expr; RETURN. This enables range checking and
3000         exception delivery in case of rangefail.
3001
3002 Tue Jan 17 07:38:27 1995  Wilfried Moser  <moser@rtl.cygnus.com>
3003
3004         * decl.c (init_decl_processing): Add definition of
3005         library function __inbitstring (see expr.c).
3006
3007         * expr.c (chill_expand_expr case SET_IN_EXPR): Call function
3008         __inpowerset fir POWERSET's and function __inbitstring for
3009         BITSTRING's. In case of POWERSET's we must not do a rangecheck,
3010         in case of BITSTRING's we have to do one.
3011         (build_compare_expr): Fix typo CH_DERIVED_FLAG (tmp); (warning
3012         statement with no effect).
3013
3014 Fri Jan 13 13:35:30 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3015
3016         * actions.c (check_expression):  Simplify result.
3017
3018         * ch-tree.h (SET_CH_NOVELTY_NONNIL):  New macro.
3019         * expr.c, timing.c, typeck.c:  Use SET_CH_NOVELTY_NONNIL.
3020
3021         * typeck.c (valid_array_index_p), ch-tree.h:  Change interface
3022         to return modified index expression.  Call error if out-of-range.
3023         * actions.c, typeck.c:  Modify
3024         for new valid_array_index_p interface.
3025
3026         * actions.c (build_chill_slice):  Copy novelty of index type.
3027
3028 Fri Jan 13 13:04:41 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3029
3030         * convert.c (digest_array_tuple):  Allow mode name in array
3031         tuple label.  Print error message instead of aborting.
3032
3033         * parse.c (parse_body):  Error message only if pass 1.
3034
3035         * decl.c (check_identifier), ch-tree.h:  Remove.  Unused.
3036
3037 Wed Jan 11 14:03:47 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3038
3039         * parse.c (parse_modulion):  Undo yesterday's change (to allow
3040         an ON-handler to follow) until we re-implement module.
3041
3042 Tue Jan 10 17:23:55 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3043
3044         * loop.c (declare_temps):  Remove bogus prohibition against
3045         iterating over BOOL arrays.
3046
3047         * parse.c (parse_semi_colon):  Make it a pedwarn (instead of an
3048         error) if a semi-colon is missing before an END.
3049         (parse_action):  Likewise.
3050         * parse.c (parse_modulion):  Allow an ON-handler to follow.
3051
3052         * parse.c (parse_set_mode):  Use parse_expression to get
3053         values for number set elements.
3054
3055         * expr.c (build_compare_expr):  Make sure result has
3056         CH_DERIVED_FLAG set, since it is supposed to be BOOL-derived.
3057         (finish_chill_binary_op):  Likewise for IN_EXPR.
3058
3059 Tue Jan 10 04:46:42 1995  Wilfried Moser  <moser@rtl.cygnus.com>
3060
3061         * actions.c (lookup_and_expand_goto, lookup_and_handle_exit): Add
3062         checking the argument.
3063         (chill_expand_assignment): Take care of a newmoded dst_offset
3064         when calling __pscpy and a newmoded from_pos when calling
3065         __setpowersetbits.
3066
3067         * expr.c (chill_expand_expr): When calling __psslice take care
3068         of a newmoded min_value.
3069
3070         * parse.c (parse_name_string): Print error message only in
3071         pass 1.
3072
3073 Tue Jan  3 19:56:36 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3074
3075         * typeck.c (build_chill_array_ref_1):  Use varying_to_slice
3076         instead of building a VRAY_ARRAY_REF node.
3077         * ch-tree.def (VARY_ARRAY_REF):  Removed.
3078         * actions.c (chill_expand_assignment):  Will never call
3079         expand_assignment_to_varying_array for a VARY_ARRAY_REF, so don't.
3080         (expand_assignment_to_varying_array):  Removed.
3081         * convert.c (convert):  Remove unneeded VARY_ARRAY_REF support.
3082         * expr.c (chill_expand_expr):  Likewise.
3083
3084 Tue Jan  3 19:50:18 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3085
3086         * parse.c (parse_iteration):  Set step_value to NULL if missing.
3087         * loop.c (ITER_TYPE):  Remove DO_RANGE.
3088         (build_loop_iterator):  Implement old DO_RANGE in terms of DO_STEP.
3089         (begin_loop_scope):  Don't return on error.
3090         (build_loop_iterator):   Calculate loop variable type using
3091         resulting classes (as in Z200), rather than precision.
3092
3093         * loop.c (initialzie_iter_var, bottom_loop_end_check):  For DO_STEP,
3094         make iter_var one less to avoid overflow.
3095         * loop.c (build_loop_iterator):  If !flag_local_loop_counter,
3096         declare a new variable if needed, as allowed by Z200 (1984).
3097
3098         * ch-tree.h (ch_class):  Add typedef.
3099
3100         * typeck.c (chill_resulting_class):  New function.
3101         (chill_root_resulting_class):  Remove.
3102         * ch-tree.h (CH_RESULTING_CLASS):  New macro.
3103         (CH_ROOT_RESULTING_CLASS):  Re-implement using CH_RESULTING_CLASS.
3104
3105 Tue Jan  3 19:36:27 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3106
3107         * actions.c (build_cause_exception, expand_cause_exception), ch-tree.h:
3108         Change interface to take IDENTIFIER tree node, rather char char*.
3109         (check_expression): Change (simplify) callers appropriately.
3110         * parse.c (parse_action), typeck.c (valid_array_index_p):  Likewise.
3111         * lex.h (enum rid):  Add RID_ASSERTFAIL.
3112         * lex.c (init_lex):  Enter RID_ASSERTFAIL.
3113         * parse.c (parse_action case ASSERT):  Fix thinko TRUTH_ANDIF_EXPR
3114         to TRUTH_ORIF_EXPR.  Use RID_ASSERTFAIL.
3115
3116         * typeck.c (discrete_type_p):  Re-implement using INTEGRAL_TYPE_P.
3117
3118 Tue Jan  3 19:20:35 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3119
3120         Move checking for modeless tuples in invalid contexts from parser
3121         to semantic function check_have_mode (for better error recovery):
3122         * expr.c (check_have_mode), ch-tree.h:  New function.
3123         * satisfy.c (safe_satisfy_decl):  Use check_have_mode.
3124         * expr.c (build_compare_expr, finish_chill_binary_op,
3125         finish_chill_unary_op):  Likewise.
3126         * parse.c (parse_primval):  Don't complain about mode-less tuple here.
3127
3128 Tue Jan  3 17:36:48 1995  Per Bothner  <bothner@kalessin.cygnus.com>
3129
3130         * expr.c (varying_to_slice):  Support varying arrays whose
3131         lower bound is non-zero.
3132
3133         * parse.c (parse_body):  Allow (with warning) definition to
3134         follow action.
3135
3136         * expr.c (check_case_selector), ch-tree.h:  New function.
3137         (chill_expand_case_expr):  Use it.
3138         * parse.c (parse_case_action):  Likewise.
3139
3140 Fri Dec 23 00:47:54 1994  Wilfried Moser  <moser@rtl.cygnus.com>
3141
3142         * actions.c (chill_expand_return): Change error message.
3143
3144         * ch-tree.h: Change prototypes of do_decl and do_decls.
3145
3146         * convert.c (convert): Add missing initialisation of
3147         variable orig_e_constant.
3148
3149         * decl.c: Change all calls to do_decl.
3150         (maybe_static): New function to process the ALL_STATIC_ON/OFF
3151         compiler directives.
3152         (do_decls): New argument.
3153         (do_decl): New argument and process reachbound and lifetime
3154         bound initialisation.
3155
3156         * gperf, hash.h: Add compiler directives ALL_STATIC_ON and
3157         ALL_STATIC_OFF.
3158
3159         * grant.c: Change all calls to do_decl.
3160
3161         * lex.c (read_directive): Process ALL_STATIC_ON/OFF compiler
3162         directive.
3163
3164         * parse.c (parse_loc_declaration): Pass lifetime_bound flag to
3165         do_decls.
3166
3167         * parse.h (enum terminal): Add ALL_STATIC_ON and ALL_STATIC_OFF.
3168
3169         * tasking.c: Change all calls to do_decl.
3170
3171 Mon Dec 19 23:13:58 1994  Wilfried Moser  <moser@rtl.cygnus.com>
3172
3173         * parse.c (parse_procedure_definition): Save chill_at_module_level
3174         flag, set ot to 0 and restore it at the end of function.
3175         A sequence BEGIN x: PROC () RETURN; END x; END; at module level
3176         have produced an error.
3177
3178         * expr.c (build_chill_repetition_op): Fix typo in error message.
3179
3180 Tue Dec 13 12:26:38 1994  Per Bothner  <bothner@kalessin.cygnus.com>
3181
3182         * actions.c (expand_assignment_to_varying_array):  Fix thinko:
3183         build_chill_array_ref -> build_chill_array_ref_1.
3184
3185 Sun Dec 11 23:04:27 1994  Per Bothner  <bothner@rtl.cygnus.com>
3186
3187         * actions.c (chill_expand_assignment):  Simplify the lhs if it is
3188         a COMPOUND_EXPR, so we can better handle SLICE_EXPR in lhs.
3189
3190 Thu Dec  8 13:45:38 1994  Per Bothner  <bothner@kalessin.cygnus.com>
3191
3192         * loop.c, ch-tree.h (build_loop_iterator):  Fix to return void.
3193         If start_exp is ERROR_MARK, return.
3194         * expr.c (build_generalized_call):  More robust on syntax errors.
3195
3196 Tue Dec  6 02:33:23 1994  Wilfried Moser  <moser@rtl.cygnus.com>
3197
3198         * inout.c (build_chill_readtext): In case of reading a SET mode
3199         pass ignore_case flag to runtime library.
3200
3201 Tue Nov 29 14:41:38 1994  Per Bothner  <bothner@kalessin.cygnus.com>
3202
3203         * parse.c (parse_receive_case_action):  Print error only if pass==1.
3204         * decl.c (push_scope_decls):  Use error_with_file_and_line
3205         to get correct line number of SEIZE.
3206
3207 Mon Nov 28 16:59:18 1994  Per Bothner  <bothner@kalessin.cygnus.com>
3208
3209         * expr.c (resolve_component_ref):  Call fold on result.
3210
3211         * expr.c (resolve_component_ref):  Use check_expression.
3212         * actions.c (chill_convert_for_assignment):  Likewise.
3213         * actions.c (cond_exception), ch-tree.h:  Removed.
3214         * actions.c (check_expression):  First part of COMPOUND_EXPR
3215         should be boolean_type_node;  void_type_node loses in SAVE_EXPRs.
3216
3217         * actions.c (chill_convert_for_assignment):
3218         Check string_assignment_condition for varying strings too.
3219
3220         * typeck.c (build_chill_cast):  If the types have different sizes,
3221         don't allow nondiscrete->discrete conversion, and only allow
3222         discrete->nondiscrete if input expression is constant.
3223
3224         * typeck.c (chill_similar):  Don't use losing array_type_nelts.
3225
3226         * ch-tree.h (ELSE_VARIANT_NAME):  New.
3227         * convert.c, decl.c, grant.c:  Use ELSE_VARIANT_NAME.
3228         * decl.c (handle_one_level):  Recurse on ELSE_VARIANT_NAME too.
3229
3230         Reduce dependencies on ../c-typeck.c:
3231         * expr.c:  Fix c_expand_start_case -> expand_start_case.
3232         Fix c_expand_expr_stmt -> expand_expr_stmt.
3233         (build_chill_indirect_ref):  Call convert instead of build_c_cast.
3234         * loop.c (bottom_loop_end_check):  Don't use build_modify_statement.
3235         * expr.c, except.c, typeck.c:  Don't call default_conversion.
3236         * typeck.c (string_assignment_condition):  Fix build_component_ref ->
3237         build_chill_component_ref.
3238         * decl.c:  Fix build_indirect_ref -> build_chill_indirect_ref (twice).
3239         * decl.c:  Don't set unused constructor_no_implicit (from c-typeck.c).
3240         * decl.c:  Don't call declare_function_name.
3241
3242         * parse.c: Don't always keep a valid token in terminal_buffer[0].
3243         The extra look-ahead may have made the parser faster, but caused
3244         some problems synchronizing with the lexer.  Specifically:
3245         (PEEK_TOKEN):  Now calls an optimized variant of peek_token_(0).
3246         (next_token_):  Don't call peek_token_.  Renamed to forward_token_.
3247         (NEXT_TOKEN):  Renamed to FORWARD_TOKEN.
3248         (parse_program):  Don't call yylex yet.
3249
3250         * parse.c (parse_action):  Re-do case ASSERT.
3251         Fix c_expand_expr_stmt -> expand_expr_stmt.
3252
3253         * lex.l:  Re-written to not use [f]lex, and renamed to ...
3254         * lex.c:  ... new lexer.
3255         * Makefile.in, Make-lang.in:  Remove [f]lex crud.
3256
3257         * lex.h (enum rid), lex.c (init_lex):  Added RID_ELSE.
3258
3259 Tue Nov 22 15:19:03 1994  Wilfried Moser  (moser@rtl.cygnus.com)
3260
3261         * Make-lang.in: Let chill-runtime depend on $(GCC_PASSES).
3262
3263 Fri Nov 18 14:27:32 1994  Per Bothner  <bothner@kalessin.cygnus.com>
3264
3265         * parse.c (parse_structure_node):  Simpler, and more robust.
3266
3267 Wed Nov 16 14:40:52 1994  Ian Lance Taylor  (ian@cygnus.com)
3268
3269         * lex.l (convert_bitstring): Check BITS_BIG_ENDIAN at run time,
3270         not at compile time.
3271         * typeck.c (expand_constant_to_buffer): Likewise.
3272         extract_constant_from_buffer): Likewise.
3273
3274 Tue Nov 15 14:41:53 1994  Per Bothner  <bothner@kalessin.cygnus.com>
3275
3276         * convert.c (convert):  Call build_chill_range_type rather than
3277         build_index_2_type (which has obstack and canonicalization problems).
3278         * expr.c (build_chill_pred_or_succ):  Convert expr to root class
3279         before arithmetic.
3280         * loop.c (declare_temps):  If location iterated over is not
3281         a location, make a temporary variable for it.
3282
3283 Mon Nov 14 16:33:47 1994  Per Bothner  <bothner@kalessin.cygnus.com>
3284
3285         * typeck.c, ch-tree.h (chill_equivalent):  Change to return
3286         a tree (a Boolean expression).  Also, add some missing tests.
3287         * ch-tree.h (CH_EQUIVALENT):  Modify accordingly.
3288
3289         * expr.c (chill_expand_expr case CONCAT_EXPR):  When the 2nd operand
3290         is an UNDEFINED_EXPR, handle mode-mismatch with whole expr.
3291         Also, replace MEM (which is not a mode) by Pmode.
3292
3293         * ch-tree.h, typeck.c (chill_comptypes):  Removed.
3294         * convert.c (convert):  Remove calls to chill_comptypes.
3295
3296 Fri Nov 11 13:06:29 1994  Wilfried Moser  (moser@rtl.cygnus.com)
3297
3298         * grant.c (write_grant_file): Call pfatal_with_name instead
3299         of abort when something goes wrong when opening or writing
3300         the grant file.
3301         unlink grant file if something goes wrong during writing
3302         (i.e. device full).
3303
3304         * Make-lang.in (CHILL_SRCS): Add timing.c
3305
3306         * ch-tree.h: Add prototype for chill_tasking_type_node.
3307         * lex.l (equal_number): Use chill_tasking_type_node instead of
3308         integer_type_node for converting the result.
3309         Print error messages in pass 2, in pass 1 no error will be
3310         detected.
3311         * tasking.c: New variable chill_tasking_type_node for all
3312         generated tasking related variables.
3313         Use chill_tasking_type_node instead of chill_unsigned_type_node.
3314
3315         * expr.c (chill_expand_expr): Apply Per's change.
3316
3317         * expr.c (build_chill_sizeof): In case of error just
3318         return error_makr_node.
3319         Set CH_DERIVED_FLAG at the result.
3320
3321         * timing.c (build_after_timeout_start): Clear the the timeout
3322         level to know if we are in the action part of AFTER statement
3323         or in the TIMEOUT part.
3324
3325         * typeck.c (build_chill_slice_with_length): Convert the class
3326         of the result to class of first value in expression.
3327
3328         * inout.c (build_chill_writetext, build_chill_readtext): Use stack
3329         temporary variables for the iolist so that they can get reused in
3330         subsequent calls. Emit code immediately instead of building a
3331         compound expr.
3332
3333 Fri Nov  4 12:00:54 1994  Per Bothner  <bothner@kalessin.cygnus.com>
3334
3335         * expr.c (build_chill_function_call):  Don't set TREE_TYPE
3336         of assignment to void_type_node - it confuses save_expr.
3337         * decl.c (init_decl_processing):  Removed unused code.
3338         * parse.c:  Changes to avoid warnings.
3339
3340         * grant.c (chill_finish_module_code):  Minor simplification.
3341         * lex.l (readstring):  Set *len to 1 on error.
3342
3343 Thu Nov  3 01:05:17 1994  Wilfried Moser  (moser@rtl.cygnus.com)
3344
3345         * grant.c (decode_decl): Add granting of BASED declarations.
3346
3347 Wed Nov  2 12:14:31 1994  Per Bothner  <bothner@kalessin.cygnus.com>
3348
3349         * expr.c (build_chill_lower_or_upper):  Take more care to
3350         ensure result has the right class.
3351         (build_chill_pred_or_succ):  Be more careful to get the right
3352         resulting class, and check bounds using *root* mode.
3353
3354         * typeck.c (build_chill_slice_with_range):  Check that array
3355         really is an array or string.
3356         (build_chill_slice_with_length):  Likewise.
3357
3358         * typeck.c (extract_constant_from_buffer):  Fix calculation of
3359         SET_TYPE size.  (Cannot depend on 1-byte TYPE_PRECISION field.)
3360
3361 Wed Nov  2 05:33:03 1994  Wilfried Moser  (moser@rtl.cygnus.com)
3362
3363         * Make-lang.in: Change version of compiler.
3364
3365         * ch-tree.h: Add new prototypes.
3366
3367         * decl.c (init_decl_processing): Remove timing related
3368         initialisations. Add call to timing_init.
3369
3370         * parse.c (parse_action): Process AFTER action.
3371
3372         * tasking.c (build_receive_case_start,
3373         build_receive_signal_case_label, build_receive_buffer_case_label,
3374         build_delay_case_start, build_delay_action, expand_send_buffer):
3375         Add processing of timesupervision.
3376         (tasking_init): Change definitions of runtime   functions.
3377
3378         * timing.c (timing_init): New function for initialisation of
3379         timing related stuff.
3380         (build_cycle_start, build_cycle_end): Changed due to
3381         implementation of timesupervision.
3382         (build_after_start, build_after_timeout_start, build_after_end):
3383         Implement the AFTER action.
3384         (build_timeout_preface, build_timesupervised_call): New functions
3385         to handle timesupervision in case of blocking system calls (i.e.
3386         SEND buffer action, RECEIVE CASE action etc.).